分析:使用两个栈实现,一个用来存数据,另一个用来存最小值
import java.util.Stack;
public class Solution {
Stack<Integer> stack=new Stack<Integer>();
Stack<Integer> min=new Stack<Integer>();
public void push(int node) {
if(stack.isEmpty()){
min.push(node);
}else{
if(min.peek()>=node){
min.push(node);
}
}
stack.push(node);
}
public void pop() {
if(stack.peek()==min.peek()){
min.pop();
}
stack.pop();
}
public int top() {
return stack.peek();
}
public int min() {
return min.peek();
}
}