20-包含min函数的栈

1. 题目描述

图片说明

2. 题解

----------------------------------------------【2021-08-09】更新---------------------------------------------------------

import java.util.Stack;

public class Solution {
    Stack<Integer> mystack=new Stack<>();
    Stack<Integer> tmp=new Stack<>();

    public void push(int node) {
        mystack.push(node);
        //【等于!】
        //["PSH2","PSH3","PSH6","PSH2","PSH4","PSH5","POP","POP","POP","MIN"] 
        if(tmp.isEmpty() || tmp.peek()>=node)
        {
            tmp.push(node);
        }
    }

    public void pop() {
        if(mystack.peek().equals(tmp.peek()))
        {
            tmp.pop();
        }
        mystack.pop();
    }

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

    public int min() {
        return tmp.peek();
    }
}

图片说明

全部评论

相关推荐

06-13 21:59
门头沟学院 Java
点赞 评论 收藏
分享
学java时间比较短不到三个月,基本的技术栈都过了一遍就是都不太深,有个小项目。是继续找实习还是沉淀准备秋招呢?找实习的话会花很多时间在八股,放弃的话又怕秋招简历太难看。有无大佬支招
今天java了吗:1.一定要找实习,实习不一定要去,但是找实习过程中的面试经验和心态经验才是最重要的 2.八股本来就是大头,甚至比项目重要 3.这个时间段也是面试比较多的阶段,可以抓住机会锻炼。面试才会发现自己的不足,感觉自己会了和能给面试官娓娓道来是两码事
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务