Design a stack that supports push, pop, top, and retrieving the minimum element in constant time.
MinStack minStack = new MinStack(); minStack.Push(-2); minStack.Push(0); minStack.Push(-3); minStack.GetMin(); // return -3 minStack.Pop(); minStack.Top(); // return 0 minStack.GetMin(); // return -2null