日野弥生:勉強しよう

LeetCode 346 - 数据流中的移动平均值

发表于2025年02月11日

#设计 #队列 #数组 #数据流

由于标准实现的队列一定有循环队列的机制,所以不必考虑循环队列的实现。只需要利用队列结构即可轻松实现该功能。

class MovingAverage:

    def __init__(self, size: int):
        self.size = size
        self.q = deque()
        self.sum = 0


    def next(self, val: int) -> float:
        if len(self.q) == self.size:
            # 如果已经满员,则弹出栈顶元素
            self.sum -= self.q.popleft()
        self.sum += val
        self.q.append(val)
        return self.sum / len(self.q)

フラッシュタブ:LeetCode

题目链接:https://leetcode-cn.com/problems/moving-average-from-data-stream/

上一篇

LeetCode 622 - 设计循环队列

下一篇

LeetCode 150 - 逆波兰表达式求值