155. 最小栈

import java.util.ArrayDeque;

class MinStack {

/** initialize your data structure here. */

private final ArrayDeque<Integer> input;
private final ArrayDeque<Integer> output;
public MinStack() {
    input = new ArrayDeque<>();
    output = new ArrayDeque<>();
}

public void push(int x) {
    input.push(x);
    output.push(Math.min(x, output.isEmpty() ? x : output.peek()));
}

public void pop() {
    input.pop();
    output.pop();
}

public int top() {
    return input.peek();
}

public int getMin() {
    return output.peek();
}

}

posted @ 2021-01-02 17:13  backTraced  阅读(51)  评论(0)    收藏  举报