原题链接:https://leetcode.com/problems/maximum-average-subarray-i/description/
题目大意:给定一个整型数组,和一个整数k, 找到平均值最大的个数为k的子数组。
解题思路:
常规思路:使用滑动窗口。 窗口大小为k
题解:
class Solution(object):
def findMaxAverage(self, nums, k):
"""
:type nums: List[int]
:type k: int
:rtype: float
"""
"""
Time Complexity:O(N)
Space Complexity:O(1)
"""
ans = None
res = 0
for i in range(len(nums)):
res += nums[i]
if i >= k:
res -= nums[i-k]
if i >= k-1:
ans = max(ans, (res * 1.0)/k)
return ans