子数组最大平均数 I
描述 :
给你一个由 n
个元素组成的整数数组 nums
和一个整数 k
。
请你找出平均数最大且 长度为 k
的连续子数组,并输出该最大平均数。
任何误差小于 10-5
的答案都将被视为正确答案。
题目 :
LeetCode 643.子数组最大平均数 ::
643. 子数组最大平均数 I
分析 :
这是典型的滑动窗口,大小都规定了,就是K,那我们只要先读取k个,然后逐步让窗口向前走就可以了 .
解析 :
class Solution {
public double findMaxAverage(int[] nums, int k) {
double num = 0.0;
int left = 0;
for(int i = 0; i < k;i++){
num += nums[i];
}
double max = num;
for(int right = k;right < nums.length; right++){
num += nums[right] - nums[right - k];
max = Math.max(max,num);
}
return max / k;
}
}
这期就到这里 , 下期见!