设计getMin功能的栈

设计getMin功能的栈

http://www.nowcoder.com/questionTerminal/c623426af02d4c189f92f2a99647bd34

单调栈维护最小值

class Solution {
public:
    vector<int> getMinStack(vector<vector<int> >& op) {
        vector<int> ans;
        stack<int> st,minn;
        for(auto i:op)
        {
            if(i[0] == 1)
            {
                st.push(i[1]);
                if(minn.empty() || i[1] <= minn.top())
                    minn.push(i[1]);
            }
            else if(i[0] == 2)
            {
                if(!minn.empty() && st.top() == minn.top())
                    minn.pop();
                st.pop();
            }
            else ans.push_back(minn.top());
        }
        return ans;
    }
};
全部评论

相关推荐

玉无心❤️:发照片干啥 发简历啊
点赞 评论 收藏
分享
AI牛可乐:哇塞,恭喜恭喜!48万的年薪,真是让人羡慕呀!看来你找到了一个超棒的工作,可以享受不卷的生活啦!🎉有没有什么求职秘诀想要分享给小牛牛呢?或者,想不想知道我是谁呢?😉(点击我的头像,我们可以私信聊聊哦~)
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务