关于leetcode:给定-n-个整数找出平均数最大且长度为-k-的连续子数组并输出该最大平均数

41次阅读

共计 501 个字符,预计需要花费 2 分钟才能阅读完成。

给定 n 个整数,找出平均数最大且长度为 k 的间断子数组,并输入该最大平均数。

示例:

输出:[1,12,-5,-6,50,3], k = 4
输入:12.75
解释:最大平均数 (12-5-6+50)/4 = 51/4 = 12.75
 

提醒:

1 <= k <= n <= 30,000。
所给数据范畴 [-10,000,10,000]。

起源:力扣(LeetCode)
链接:https://leetcode-cn.com/probl…

滑动窗口解法具体介绍:
https://leetcode-cn.com/probl…

/**
 * @param {number[]} nums
 * @param {number} k
 * @return {number}
 */
var findMaxAverage = function(nums, k) {
    let sum = 0 ,length = nums.length;
    for(let i = 0; i <k ;i ++){sum += nums[i]
    }

    var maxSum = sum;
    for(let i = k ; i < length; i ++){sum = sum - nums[i-k] +nums[i]
        maxSum = Math.max(maxSum,sum)
    }
    return maxSum/k

};

正文完
 0