346数据流中的移动平均值
#346数据流中的移动平均值
from collections import deque
from pythonds import Deque
class MovingAverage():
def __init__(self, size):
self.queue = Deque()
self.maxsize = size
self.count = 0
def nxt(self, val):
self.queue.addRear(val)
self.count += val
if self.queue.size() > self.maxsize:
front = self.queue.removeFront()
self.count -= front
return self.count / self.queue.size()
MA = MovingAverage(3)
MA.nxt(3)
MA.nxt(7)
print(MA.nxt(5))
print(MA.nxt(9))