Data Structures and Algorithms in Python
Miriam Antona
Software Engineer
FIFO: First-In First-Out
First inserted item is the first to be removed

FIFO: First-In First-Out
First inserted item is the first to be removed

FIFO: First-In First-Out
First inserted item is the first to be removed








class Node:
def __init__(self,data):
self.data = data
self.next = None
class Queue:
def __init__(self):
self.head = None
self.tail = None
def enqueue(self,data):new_node = Node(data)if self.head == None:

def enqueue(self,data): new_node = Node(data) if self.head == None: self.head = new_node self.tail = new_node

def enqueue(self,data): new_node = Node(data) if self.head == None: self.head = new_node self.tail = new_nodeelse:

def enqueue(self,data): new_node = Node(data) if self.head == None: self.head = new_node self.tail = new_nodeelse: self.tail.next = new_node

def enqueue(self,data): new_node = Node(data) if self.head == None: self.head = new_node self.tail = new_nodeelse: self.tail.next = new_node self.tail = new_node


def dequeue(self):if self.head:

def dequeue(self):
if self.head:
current_node = self.head

def dequeue(self):
if self.head:
current_node = self.head
self.head = current_node.next

def dequeue(self):
if self.head:
current_node = self.head
self.head = current_node.next
current_node.next = None

def dequeue(self): if self.head: current_node = self.head self.head = current_node.next current_node.next = Noneif self.head == None:

def dequeue(self):
if self.head:
current_node = self.head
self.head = current_node.next
current_node.next = None
if self.head == None:
self.tail = None
import queueorders_queue = queue.SimpleQueue()orders_queue.put("Sushi") orders_queue.put("Lasagna") orders_queue.put("Paella")print("The size is: ", orders_queue.qsize())
The size is: 3
print(orders_queue.get())
print(orders_queue.get())
print(orders_queue.get())
Sushi
Lasagna
Paella
print("Empty queue: ", orders_queue.empty())
Empty queue: True
Data Structures and Algorithms in Python