mirror of
https://github.com/autistic-symposium/master-algorithms-py.git
synced 2025-04-30 12:46:11 -04:00
40 lines
983 B
Python
40 lines
983 B
Python
#!/usr/bin/env python
|
|
|
|
__author__ = "bt3"
|
|
|
|
''' a class for a double ended queue (also inefficient) '''
|
|
|
|
from queue import Queue
|
|
|
|
class Deque(Queue):
|
|
|
|
def enqueue_back(self, item):
|
|
self.items.append(item)
|
|
|
|
def dequeue_front(self):
|
|
return self.items.pop(0)
|
|
|
|
|
|
|
|
if __name__ == '__main__':
|
|
queue = Deque()
|
|
print("Is the queue empty? ", queue.isEmpty())
|
|
print("Adding 0 to 10 in the queue...")
|
|
for i in range(10):
|
|
queue.enqueue(i)
|
|
print("Queue size: ", queue.size())
|
|
print("Queue peek : ", queue.peek())
|
|
print("Dequeue...", queue.dequeue())
|
|
print("Queue peek: ", queue.peek())
|
|
print("Is the queue empty? ", queue.isEmpty())
|
|
print(queue)
|
|
|
|
print("\nNow using the dequeue methods...")
|
|
print("Dequeue from front...", queue.dequeue_front())
|
|
print("Queue peek: ", queue.peek())
|
|
print(queue)
|
|
print("Queue from back...")
|
|
queue.enqueue_back(50)
|
|
print("Queue peek: ", queue.peek())
|
|
print(queue)
|