Python作业—— Leetcode题目选做(3)

643Maximum Average Subarray I

题目内容:

Python作业—— Leetcode题目选做(3)


解题思路:

对列表进行遍历,计算出每k个相邻数字的平均值,每次进行比较,最终得出最大平均值。


代码1:

Python作业—— Leetcode题目选做(3)

出现错误(答案错误):

Python作业—— Leetcode题目选做(3)

错误分析:

经查阅资料得知,在python 3.0中,x/y将只执行true除法,而与操作数无关;x//y则执行floor除法。故怀疑在Leetcode中的python版本并非最新版本,所以修改代码使其计算结果时为浮点数。


代码2:

Python作业—— Leetcode题目选做(3)

出现错误(超出时间限制):

Python作业—— Leetcode题目选做(3)

错误分析:

时间复杂度为O(kn),是否可优化。


代码3:(时间复杂度为O(k+n))

Python作业—— Leetcode题目选做(3)

提交通过:

Python作业—— Leetcode题目选做(3)

643Maximum Average Subarray I