class Queue: def __init__(self): self.size = 0 # self.storage = ? self.data = LinkedList() def __len__(self): return self.size def enqueue(self, value): self.data.insert_tail(value) self.size += 1 def dequeue(self): if self.data.head is None: return None else: val = self.data.head.get_data() self.data.remove_head() self.size -= 1 return val