Solution: Min Stack
Explore the implementation of a Min Stack data structure that allows pushing, popping, and retrieving the minimum value in O(1) time. Understand how to maintain two synchronized stacks to efficiently track the minimum, preserving optimal time and space complexity for common stack operations.
We'll cover the following...
Statement
Design a custom stack class, Min Stack, allowing us to push, pop, and retrieve the minimum value in constant time. Implement the following methods for Min Stack:
-
Constructor: 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 time.
Note: The time complexity of all the methods above should be . ...