包含min函数的栈

class MinStack {
  
    /** initialize your data structure here. */
    public MinStack() {

    }
    ArrayList list = new ArrayList<>();
    Stack stack = new Stack();
    public void push(int x) {
        list.add(x);
        stack.push(x);
    }
    
    public void pop() {
        list.remove(stack.pop());
    }
    
    public int top() {
        return (int)stack.peek();
    }
    
    public int min() {
// 这里最好用Collections的sort方法,如果用list自带的sort方法可能会出错
        Collections.sort(list);
         return list.get(0);
    }
}

你可能感兴趣的:(包含min函数的栈)