类型:队列
-
- 数据流中的移动平均值 💚
https://leetcode-cn.com/problems/moving-average-from-data-stream/
❓ 实现一个滑动窗口类 MovingAverage:
-
MovingAverage(int size)
初始化示例,窗口大小初始化为 size。
-
double next(int val)
向窗口中压入数据 val,并返回当前窗口内数据平均值。
💡 双端队列
class MovingAverage: def __init__(self, size: int): """ Initialize your data structure here. """ self.size = size self.arr = [] def next(self, val: int) -> float: self.arr.append(val) if len(self.arr) > self.size: self.arr = self.arr[len(self.arr) - self.size:] return sum(self.arr) / len(self.arr)