滑动窗口
方法一滑动窗口
解题思路
这是一个比较典型的滑动窗口问题。
可以维护一个大小位k的滑动窗口,依次遍历,每次去掉末尾的元素添加当前遍历的元素
参考代码
class Solution:def findMaxAverage(self, nums: List[int], k: int) -> float:total = 0for i in range(0,k):total += nums[i]max_total = totalfor i in range(k, len(nums)):total = total + nums[i] - nums[i - k]max_total = max(total,max_total)return max_total / k
复杂度分析
时间复杂度 O(n)
空间复杂度 O(1)
