blob: 26f61a2de518a08b08ad5d57601340ab7bf7b12a (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
class circular_queue:
def __init__(self, size):
self.size = size
self.queue = []
for i in range(self.size):
self.queue.append(None)
self.pointer = 0
def add(self, value):
self.queue[self.pointer] = value
self.pointer += 1
if self.pointer >= self.size:
self.pointer = 0
def average(self):
value = 0
length = 0
for i in self.queue:
if i != None:
value += i
length += 1
if length == 0:
return 0
return value / length
|