Solution: Min Stack
Explore how to implement a Min Stack that allows pushing, popping, and retrieving the minimum element in O(1) time. Understand the use of two stacks to maintain efficient operations and learn techniques to optimize stack-based data structures for coding interviews.
We'll cover the following...
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 time.
Note: The time complexity of all the methods above should be ...