Maximum Average Subarray
Sliding Window
Problem
Thought Process
Solution
class Solution:
def findMaxAverage(self, nums: List[int], k: int) -> float:
maxAvg = float('-inf')
totalAvg = 0
start = 0
for i in range(len(nums)):
totalAvg+=nums[i]
if i >= k-1:
newAvg = totalAvg/k
maxAvg = max(maxAvg, newAvg)
totalAvg-=nums[start]
start+=1
return maxAvg
Key Points
Time Complexity
Last updated