Solution to LeetCode #232: Implement Queue using Stacks (Python)

Top 0.7% of submissions

Jacob Bennett


This is an easy LeetCode problem

Implement a first in first out (FIFO) queue using only two stacks. The implemented queue should support all the functions of a normal queue (push, peek, pop, and empty).

Implement the MyQueue class:

  • void push(int x) Pushes element x to the back of the queue.
  • int pop() Removes the element from the front of the queue and returns it.
  • int peek() Returns the element at the front of the queue.
  • boolean empty() Returns true if the queue is empty, false otherwise.


  • You must use only standard operations of a stack, which means only push to top, peek/pop from top, size, and is empty operations are valid.
  • Depending on your language, the stack may not be supported natively. You may simulate a stack using a list or deque (double-ended queue) as long as you use only a stack’s standard operations.

Python’s straightforward solution

Python makes this challenge very easy. Pretty much every operation is natively supported.

Initialize the class



Jacob Bennett

Staff Software Engineer @ Medium • • I write about software engineering, product design and development, and leadership in tech.