文章目录
题目介绍

题解
因为要实现在常数时间内检索到栈中的最小元素,所以使用数组栈,每个数组保存[当前值, 当前最小值] 。
代码如下:
java
class MinStack {
private Stack<int[]> stack = new Stack<>();
public MinStack() {
}
public void push(int x) {
if (stack.isEmpty()){
stack.push(new int[]{x, x});
}else {
stack.push(new int[]{x, Math.min(x, stack.peek()[1])});
}
}
public void pop() {
stack.pop();
}
public int top() {
return stack.peek()[0];
}
public int getMin() {
return stack.peek()[1];
}
}