47 lines
1.1 KiB
Python
Executable File
47 lines
1.1 KiB
Python
Executable File
class queue:
|
|
def __init__(self):
|
|
self.data = []
|
|
self.rear = -1
|
|
|
|
def enqueue(self, value):
|
|
self.data.append(value)
|
|
self.rear += 1
|
|
|
|
def dequeue(self):
|
|
value = self.data[0] # Dequeue from the front
|
|
del self.data[0]
|
|
self.rear -= 1
|
|
return value
|
|
|
|
def peek(self):
|
|
if self.rear != -1 and self.data is not None:
|
|
return self.data[self.rear]
|
|
else:
|
|
return "Empty Queue"
|
|
|
|
def printQueue(self):
|
|
return(self.data)
|
|
|
|
def main():
|
|
q1 = queue()
|
|
|
|
print(q1.printQueue())
|
|
q1.enqueue(10)
|
|
assert(q1.peek() == 10), f"Top of queue not 10, got:{q1.peek()}"
|
|
q1.enqueue(11)
|
|
assert(q1.peek() == 11), f"Top of queue not 11, got:{q1.peek()}"
|
|
|
|
print(q1.printQueue())
|
|
|
|
q1.dequeue()
|
|
assert(q1.peek() == 11), f"Top of queue not 11, got:{q1.peek()}"
|
|
print(q1.printQueue())
|
|
q1.dequeue()
|
|
assert(q1.peek() == "Empty Queue"), f"Top of queue not Empty Queue, got:{q1.peek()}"
|
|
|
|
print("No errors found")
|
|
print(q1.printQueue())
|
|
|
|
if __name__ == "__main__":
|
|
main()
|