-
Notifications
You must be signed in to change notification settings - Fork 8
Expand file tree
/
Copy pathqueueUsingArray.py
More file actions
89 lines (66 loc) · 1.89 KB
/
queueUsingArray.py
File metadata and controls
89 lines (66 loc) · 1.89 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
class Queue:
# To initialize the object.
def __init__(self, c):
self.queue = []
self.front = self.rear = 0
self.capacity = c
# Function to insert an element
# at the rear of the queue
def queueEnqueue(self, data):
# Check queue is full or not
if (self.capacity == self.rear):
print("\nQueue is full")
# Insert element at the rear
else:
self.queue.append(data)
self.rear += 1
# Function to delete an element
# from the front of the queue
def queueDequeue(self):
# If queue is empty
if (self.front == self.rear):
print("Queue is empty")
# Pop the front element from list
else:
x = self.queue.pop(0)
self.rear -= 1
# Function to print queue elements
def queueDisplay(self):
if (self.front == self.rear):
print("\nQueue is Empty")
# Traverse front to rear to
# print elements
for i in self.queue:
print(i, "<--", end='')
# Print front of queue
def queueFront(self):
if (self.front == self.rear):
print("\nQueue is Empty")
print("\nFront Element is:",
self.queue[self.front])
# Driver code
if __name__ == '__main__':
# Create a new queue of
# capacity 4
q = Queue(5)
# Print queue elements
q.queueDisplay()
# Inserting elements in the queue
q.queueEnqueue(10)
q.queueEnqueue(28)
q.queueEnqueue(47)
q.queueEnqueue(56)
q.queueEnqueue(88)
# Print queue elements
q.queueDisplay()
# Insert element in queue
q.queueEnqueue(60)
# Print queue elements
q.queueDisplay()
q.queueDequeue()
q.queueDequeue()
print("\n\nafter two node deletion\n")
# Print queue elements
q.queueDisplay()
# Print front of queue
q.queueFront()