python经典面试题(中位数)

写一个函数 find_median(l) 计算列表中的中位数,如果列表中的元素个数是偶数,则返回中间那两个数值的平均值

例如:find_median([3,5,7])则返回5 find_median([3,5,7,9])  则返回6

def find_median(lst):
    n = len(lst)
    if n < 1:
            return None
    if n % 2 == 1:
            return sorted(lst)[n//2]
    else:
            return int(sum(sorted(lst)[n//2-1:n//2+1])/2.0)
if __name__ == '__main__':
    print(find_median([3,5,7]))

你可能感兴趣的:(python)