Your question is Min Stack Design. Start with the requirements on the right.
Run and submit as often as you like. When you're ready, talk me through your approach or go straight to the code.
Min Stack (design a stack supporting push/pop/getMin in O(1))
Asked in the phone screen stage. 60-min phone screen coding portion.
Implement min_stack(operations). Each operation is a list: ["push", value], ["pop"], or ["getMin"]. Process operations in order and return a list containing the result of every getMin operation. push and pop do not add results. Inputs are valid: pop and getMin are never called when the stack is empty.
def min_stack(operations):