O'Reilly logo

Python Data Structures and Algorithms by Benjamin Baka

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Dequeue operation

The dequeue operation is a little more involved than its enqueue counterpart operation. New elements added to our queue end up in the inbound_stack. Instead of removing elements from the inbound_stack, we shift our attention to the outbound_stack. As we said, elements can be deleted from our queue only through the outbound_stack:

    if not self.outbound_stack:         while self.inbound_stack:             self.outbound_stack.append(self.inbound_stack.pop())     return self.outbound_stack.pop() 

The if statement first checks whether the outbound_stack is empty or not. If it is not empty, we proceed to remove the element at the front of the queue by doing the following:

return self.outbound_stack.pop() 

If the outbound_stack is empty instead, all ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required