Search⌘ K
AI Features

Solution: Min Stack

Explore how to implement a custom Min Stack that allows pushing, popping, and retrieving the minimum value in constant O(1) time. This lesson guides you through designing the Min Stack with two parallel stacks, ensuring efficient operations while maintaining the stack's minimum element at all times.

Statement

Design a custom stack, Min Stack, allowing us to push, pop, and retrieve the minimum value in constant time. Implement the following methods for Min Stack struct:

  • NewMinStack(): This initializes the Min Stack object.

  • Pop(): This removes and returns from the stack the value that was most recently pushed onto it.

  • Push(): This pushes the provided value onto the stack.

  • Min Number(): This returns the minimum value in the stack in O(1)O(1) ...