题目:来源于力扣

分析:
我本想用“滑动窗口”的思路,但还是另外写了一个。
这里主要找出连续子数组的最大和,最后除以k即可,除以(k*1.0)就可以转成浮点数了
上代码:
class Solution {
public:
double findMaxAverage(vector<int>& nums, int k) {
int sum=0;
for(int i=0;i<k;++i){
sum+=nums[i];
}
int max_sum=sum, len=nums.size();
for(int i=k;i<len;++i){
sum=sum-nums[i-k]+nums[i];
max_sum=max(max_sum,sum);
}
return max_sum/(k*1.0);
}
};
再接再厉,加油哈!
U•ェ•*U
该博客介绍了一种解决力扣问题的方法,通过滑动窗口算法寻找数组中长度为k的连续子数组的最大平均值。代码实现中,首先初始化窗口内元素之和,然后迭代数组,更新窗口内的元素和,同时记录最大和。最终返回最大和除以k得到的最大平均值。
840

被折叠的 条评论
为什么被折叠?



