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

包含min函数的栈

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

#include <algorithm>
#include <vector>
class Solution {
    std::vector<int> data_;
    std::vector<int> min_data_;
public:
    void push(int value) {
        data_.push_back(value);
        if (min_data_.empty()) {
            min_data_.push_back(value);
        } else {
            min_data_.push_back(std::min(value, min_data_.back()));
        }
    }
    void pop() {
        if (!min_data_.empty()) {
            data_.pop_back();
            min_data_.pop_back();
        }
    }
    int top() {
        if (data_.empty()) return -1;
        return data_.back();
    }
    int min() {
        return min_data_.back();
    }
};

全部评论

相关推荐

mjasjon:这种trash中厂 简历过筛概率比大厂还低(除阿里系)
投递哔哩哔哩等公司6个岗位
点赞 评论 收藏
分享
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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