剑指 Offer II 041. 滑动窗口的平均值

exiaohu 于 2022-07-16 发布

题目链接:剑指 Offer II 041. 滑动窗口的平均值

记录窗口内的所有数字,同时为了加快计算,记录窗口内数字之和。

from collections import deque


class MovingAverage:

    def __init__(self, size: int):
        self.size = size
        self.window = deque([])
        self.ans = 0

    def next(self, val: int) -> float:
        self.window.append(val)
        self.ans += val
        while len(self.window) > self.size:
            self.ans -= self.window.popleft()

        return self.ans / len(self.window)