Maximum Average Subarray I

Posted 唐僧洗发爱飘柔

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Maximum Average Subarray I相关的知识,希望对你有一定的参考价值。

    这道题为简单题

  题目:

    

 

  思路:

    我先把前k个数加起来计算平均值,然后遍历列表从索引(k, len(nums)),每次列表向右移动一次就把最左边的的元素减去再加上最新的这个元素,计算总值再求平均值,并与之前的最大值比较,遍历结束后可得最大值。

  代码:

 1 class Solution(object):
 2     def findMaxAverage(self, nums, k):
 3         """
 4         :type nums: List[int]
 5         :type k: int
 6         :rtype: float
 7         """
 8         total = 0.0
 9         for i in range(k):
10             total += nums[i]
11         m = total / k
12         
13         for i in range(k, len(nums)):
14             total = (total-nums[i-k]+nums[i]) 
15             m = max(m, total / k)
16         return m

 

以上是关于Maximum Average Subarray I的主要内容,如果未能解决你的问题,请参考以下文章

Maximum Average Subarray I

643. Maximum Average Subarray I

643. Maximum Average Subarray I

[LeetCode] Maximum Average Subarray I

lintcode617- Maximum Average Subarray- medium

[leetcode-644-Maximum Average Subarray II]