From 5213342262ad557e707bb254017e2406fc69ab77 Mon Sep 17 00:00:00 2001 From: Varun Shrivastava Date: Fri, 5 Feb 2021 15:35:30 +0530 Subject: [PATCH] Added new queue problem --- data_structures/queue/main.py | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) create mode 100644 data_structures/queue/main.py diff --git a/data_structures/queue/main.py b/data_structures/queue/main.py new file mode 100644 index 00000000..32d0e026 --- /dev/null +++ b/data_structures/queue/main.py @@ -0,0 +1,22 @@ +#A basic queue has the following operations: +#Enqueue: add a new element to the end of the queue. +#Dequeue: remove the element from the front of the queue and return it. +class MyQueue(object): + def __init__(self): + self.stack1 = [] + self.stack2 = [] + + def peek(self): + if len(self.stack2) == 0: + while len(self.stack1) != 0: + self.stack2.append(self.stack1.pop()) + return self.stack2[-1] + + def pop(self): + if len(self.stack2) == 0: + while len(self.stack1) != 0: + self.stack2.append(self.stack1.pop()) + self.stack2.pop() + + def put(self, value): + self.stack1.append(value) \ No newline at end of file