
class MinStack { private List<Integer> stack; private List<Integer> assit; //辅助栈 /** initialize your data structure here. */ public MinStack() { this.stack=new ArrayList<>(); this.assit=new ArrayList<>(); } public void push(int x) { stack.add(x); if (assit.isEmpty()){ assit.add(x); }else if(x< assit.get(assit.size()-1)){ assit.add(x); }else{ assit.add(assit.get(assit.size()-1)); } } public void pop() { stack.remove(stack.size()-1); assit.remove(assit.size()-1); } public int top() { return stack.get(stack.size()-1); } public int getMin() { return assit.get(assit.size()-1); }}