Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
21 changes: 21 additions & 0 deletions Python/data-structures/Queue.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
class Queue:
def __init__(self):
self.items = []

def enqueue(self, item):
self.items.insert(0, item)

def dequeue(self):
if self.is_empty():
raise Exception("Queue is empty")
else:
return self.items.pop()

def peek(self):
return self.items[-1]

def size(self):
return len(self.items)

def is_empty(self):
return self.items == []
24 changes: 24 additions & 0 deletions Python/data-structures/examples.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
from Queue import Queue

# ----------------- Queue -----------------
q1 = Queue()

# put elements in queue
q1.enqueue(42)
q1.enqueue(256)
q1.enqueue(6)

# look at the top of the queue
print("Top element: ", q1.peek())

# use the top element
top = q1.dequeue()
print("Top element in variable: ", top)
print("Top element after using past top element: ", q1.peek())

print("Size of queue: ", q1.size())
# we can just dequeue elements without using
q1.dequeue()
q1.dequeue()
print("Is queue empty now: ", q1.is_empty())