Implement a circular queue that supports input and output using the fifo method
Utilisateur anonyme
class queue(): def __init__(self, length) -> None: self.pointer_start = 0 self.pointer_end = 0 self.length_arr = length self.arr = [0] * self.length_arr def insert(self, number): if self.pointer_end == self.length_arr and self.pointer_start== 0: return -1 elif self.pointer_end == self.length_arr: self.pointer_end = 0 self.arr[self.pointer_end] = number self.pointer_end += 1 else: self.arr[self.pointer_end] = number self.pointer_end += 1 def get(self): if self.pointer_start >= self.length_arr: self.pointer_start = 0 number = self.arr[self.pointer_start] else: number = self.arr[self.pointer_start] self.pointer_start += 1 return number def __str__(self) -> str: return str(self.arr) queue_test = queue(4) print(queue_test) queue_test.insert(1) print(queue_test) queue_test.insert(3) print(queue_test) queue_test.insert(9) print(queue_test) queue_test.insert(2) print(queue_test) a= queue_test.get() print(a) print(queue_test) a= queue_test.get() print(a) print(queue_test) queue_test.insert(21) print(queue_test) a= queue_test.get() print(a) print(queue_test) a= queue_test.get() print(a) print(queue_test) a= queue_test.get() print(a) print(queue_test)