LC 232


Solution to LeetCode 232 Implement Queue using Stacks.

LeetCode 232

Implement Queue using Stacks (Easy) [link]

Python list pop() is an inbuilt function in Python that removes and returns the last value from the List or the given index value.

class MyQueue:

    def __init__(self):
        self.stack_in = []
        self.stack_out = []

    def push(self, x: int) -> None:
        self.stack_in.append(x)

    def pop(self) -> int:
        if self.empty: 
            return None

        if self.stack_out:
            return self.stack_out.pop()
        else:
            # for i in range(len(self.stack_in)):
            while self.stack_in:
                self.stack_out.append(self.stack_in.pop())
            return self.stack_out.pop()

    def peek(self) -> int:
        ele = self.pop()
        self.stack_out.append(ele)
        return ele

    def empty(self) -> bool:
        return not (self.stack_in or self.stack_out)

# Your MyQueue object will be instantiated and called as such:
# obj = MyQueue()
# obj.push(x)
# param_2 = obj.pop()
# param_3 = obj.peek()
# param_4 = obj.empty()

  TOC