题目来源:
leetcode题目,网址:LCR 041. 数据流中的移动平均值 - 力扣(LeetCode)
解题思路:
使用队列保存最多 size 个元素然后计算平均值并返回即可。
解题代码:
class MovingAverage {Queue<Integer> queue=new LinkedList<>();int maxSize=0;int sum=0;/** Initialize your data structure here. */public MovingAverage(int size) {this.maxSize=size;}public double next(int val) {if(queue.size()>=this.maxSize){this.sum-=queue.poll();}this.sum+=val;queue.offer(val);return (sum+0.0)/queue.size();}
}/*** Your MovingAverage object will be instantiated and called as such:* MovingAverage obj = new MovingAverage(size);* double param_1 = obj.next(val);*/
总结:
刚开始没明白题目什么意思,看官方题解后才理解。