30.最小栈-LeetCode-Java

    技术2026-08-26  8

    设计一个支持 push ,pop ,top 操作,并能在常数时间内检索到最小元素的栈。 push(x) —— 将元素 x 推入栈中。 pop() —— 删除栈顶的元素。 top() —— 获取栈顶元素。 getMin() —— 检索栈中的最小元素。 示例: 输入: ["MinStack","push","push","push","getMin","pop","top","getMin"] [[],[-2],[0],[-3],[],[],[],[]] 输出: [null,null,null,null,-3,null,0,-2] 解释: MinStack minStack = new MinStack(); minStack.push(-2); minStack.push(0); minStack.push(-3); minStack.getMin(); --> 返回 -3. minStack.pop(); minStack.top(); --> 返回 0. minStack.getMin(); --> 返回 -2. import java.util.Vector; class MinStack { Vector vector; public MinStack() { vector = new Vector(); } public void push(int x) { vector.add(x); } public void pop() { vector.remove(vector.size()-1); } public int top() { return (int) vector.get(vector.size() - 1); } public int getMin() { int min = Integer.MAX_VALUE; for (int i = 0; i < vector.size(); i++) { if ((int) vector.get(i) < min) min = (int) vector.get(i); } return min; } }
    Processed: 0.009, SQL: 9