首页 > 其他 > 详细

643. Maximum Average Subarray I

时间:2020-07-15 01:07:19      阅读:37      评论:0      收藏:0      [点我收藏+]

Given an array consisting of n integers, find the contiguous subarray of given length k that has the maximum average value. And you need to output the maximum average value.

给一个数组和窗口k,求一个连续子数组长度为k,和的平均值最大

其实就是滑动窗口前缀和,我们维护一个长度为k的前缀和以及一个全局最大和就行

class Solution(object):
    def findMaxAverage(self, nums, k):
        """
        :type nums: List[int]
        :type k: int
        :rtype: float
        """
        max_sum = 0
        current_k_sum = 0
        for i in range(k):
            current_k_sum += nums[i]
        max_sum = current_k_sum
        for i in range(k, len(nums), 1):
            current_k_sum += nums[i] - nums[i - k]
            max_sum = max(max_sum, current_k_sum)
        return max_sum * 1.0 / k

 

643. Maximum Average Subarray I

原文:https://www.cnblogs.com/whatyouthink/p/13302125.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!