Skip to content

Instantly share code, notes, and snippets.

@umangshrestha
Created June 18, 2020 14:09
Show Gist options
  • Save umangshrestha/c563e5cb3838194d0e0d0dcfd2178cdd to your computer and use it in GitHub Desktop.
Save umangshrestha/c563e5cb3838194d0e0d0dcfd2178cdd to your computer and use it in GitHub Desktop.
class cirQueue():
def __init__(self, size):
self.size = size
self.array = [None] * self.size
self.front = -1
self.rear = -1
def isFull(self):
if self.front == self.rear + 1 and self.front != -1:
return True
return False
def isEmpty(self):
if self.front == -1:
return True
return False
def enQueue(self, element):
if self.isFull():
raise Exception("Queue is full")
if self.front == -1:
self.front = 0
if self.rear == self.size - 1:
self.rear = 0
else:
self.rear += 1
self.array[self.rear] = element
def deQueue(self):
if self.isEmpty():
raise Exception("Queue is empty")
data = self.array[self.front]
if self.front == self.rear:
self.front = -1
self.rear = -1
self.array = [None for _ in range(self.size)]
else:
self.front += 1
return data
def display(self):
print(self.array)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment