155. Min Stack 发表于 2021-12-18 123456789101112131415161718192021222324252627282930313233class MinStack { private final Stack<Integer> stack; private final Stack<Integer> decreaseStack; // 自底向上非严格递减栈,允许重复元素 public MinStack() { this.stack = new Stack<>(); this.decreaseStack = new Stack<>(); } public void push(int val) { stack.push(val); if (decreaseStack.isEmpty() || val <= decreaseStack.peek()) { decreaseStack.push(val); } } public void pop() { int value = stack.pop(); if (value == decreaseStack.peek()) { decreaseStack.pop(); } } public int top() { return stack.peek(); } public int getMin() { return decreaseStack.peek(); }} Reference155. Min Stack剑指 Offer 30. 包含min函数的栈