滑动窗口
class Solution(object):
def findMaxAverage(self, nums, k):
sum = 0
max_avg = float('-inf')
n = len(nums)
start = 0
for end in range(n):
sum += nums[end]
if end - start +1 ==k:
max_avg = max(max_avg, 1.0 * sum/k)
if end >= k-1:
sum -= nums[start]
start +=1
return max_avg
测试集
nums = [1, 12, -5, -6, 50, 3] k = 4
# Create an instance of the Solution class
solution = Solution()
# Call the findMaxAverage
function result = solution.findMaxAverage(nums, k)
# Print the result
print(result)
保持滑动窗口K的长度不变,如果为k,则起始点加一 要求平均值,定义sum,考虑负数则定义-inf