力扣HOT100 - 155. 最小栈

解题思路:

辅助栈

java 复制代码
class MinStack {
    private Stack<Integer> stack;
    private Stack<Integer> min_stack;

    public MinStack() {
        stack = new Stack<>();
        min_stack = new Stack<>();
    }

    public void push(int val) {
        stack.push(val);
        if (min_stack.isEmpty() || val <= min_stack.peek())
            min_stack.push(val);
    }

    public void pop() {
        if (stack.pop().equals(min_stack.peek()))
            min_stack.pop();
    }

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

    public int getMin() {
        return min_stack.peek();
    }
}
相关推荐
CoderYanger几秒前
D.二分查找-基础——744. 寻找比目标字母大的最小字母
java·开发语言·数据结构·算法·leetcode·职场和发展
柯南二号3 分钟前
【后端】【Java】一文详解Spring Boot 统一日志与链路追踪实践
java·开发语言·数据库
元亓亓亓4 分钟前
LeetCode热题100--347. 前 K 个高频元素--中等
数据结构·算法·leetcode
Hello eveybody7 分钟前
冒泡、选择、插入排序简介(C++)
数据结构·算法·排序算法
CoderYanger9 分钟前
贪心算法:2.将数组和减半的最少操作次数
java·算法·leetcode·贪心算法·1024程序员节
爱学java的ptt11 分钟前
面试手撕排序
java·面试
Chen--Xing12 分钟前
LeetCode 49.字母异位词分组
c++·python·算法·leetcode·rust
柯南二号12 分钟前
【后端】【Java】RESTful书面应该如何写
java·开发语言·restful
长安er15 分钟前
LeetCode 235 & 236 最近公共祖先(LCA)解题总结
算法·leetcode·二叉树·递归·lca
JIngJaneIL16 分钟前
基于Java+ vueOA工程项目管理系统(源码+数据库+文档)
java·开发语言·前端·数据库·vue.js·spring boot·后端