题解 | #包含min函数的栈#

包含min函数的栈

https://www.nowcoder.com/practice/4c776177d2c04c2494f2555c9fcc1e49

使用俩个栈,一个存储最小值,一个整常的值,对于最小值的存储,每次都比较栈顶元素和插入的值,插入2者中较小值。

class Solution {
    stack<int> st;
    stack<int> minst;
public:
    void push(int value) {
       if(minst.empty()) 
       minst.push(value);
       else
        minst.push(std::min(minst.top(),value));
        st.push(value);
    }
    void pop() {
       minst.pop();
       st.pop(); 
    }
    int top() {
        return st.top();
    }
    int min() {
        return minst.top();
    }
};
全部评论

相关推荐

面试摇了我吧:啊哈哈面试提前五个小时发,点击不能参加就是放弃
点赞 评论 收藏
分享
牛客410815733号:这是什么电影查看图片
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务