包含min函数的栈

求解代码

java 复制代码
Stack<Integer> stackData1 = new Stack<Integer>();
    Stack<Integer> stackData2 = new Stack<Integer>();


    public void push(int node) {
        stackData1.push(node);
        if(stackData2.isEmpty()||node<=min()){
            stackData2.push(node);
        }
    }
    
    public void pop() {
        if(stackData1.peek().equals(min())){
            stackData2.pop();
        }
        stackData1.pop();
    }
    
    public int top() {
        return stackData1.peek();
    }
    
    public int min() {
        return stackData2.peek();
    }

小贴士

stackData1.peek().equals(min()) 来比较包装类的实际数值,也可以用 stackData1.peek().intValue() == min(),效果是一样的。

相关推荐
北风toto3 分钟前
为什么 IntelliJ IDEA Community 无法开发 Vue?——附解决方案
java·vue.js·intellij-idea
programhelp_4 分钟前
Google 2026 New Grad SDE VO 三轮面试详解 | 含Behavioral、Coding、Design
java·服务器·数据库
froginwe114 分钟前
Vue.js 监听属性
开发语言
c++逐梦人6 分钟前
五种IO模型与⾮阻塞IO
开发语言·网络
翎沣7 分钟前
C++面向对象三大特性
开发语言·c++
吃着火锅x唱着歌8 分钟前
LeetCode 962.最大宽度坡
算法·leetcode·职场和发展
驭渊的小故事8 分钟前
java中的进程的详细解析
java·开发语言
烟雨江南aabb14 分钟前
Python第六弹:python爬虫篇:什么是爬虫
开发语言·爬虫·python
沐知全栈开发15 分钟前
Servlet 文件上传详解
开发语言
Mr_sst16 分钟前
Codex 部署、使用教程 & Vibe Coding 实战指南
java·ai·语言模型·chatgpt·ai编程