class Solution {
public:
    vector<int> GetLeastNumbers_Solution(vector<int> input, int k) {
        vector<int> res;
        if(k > input.size()) return res;
        
        priority_queue<int> heap;
        for(auto x : input)
        {
            heap.push(x);
            if(heap.size() > k) heap.pop(); //如果当前大根堆中的元素>k个
        }
        while(heap.size())
        {
            res.push_back(heap.top());
            heap.pop();
        }
        //大根堆 - > 按照从到大数序排列所以要逆序
        reverse(res.begin(),res.end());
        return res;
    }
};
2020-05-16
在牛客打卡24天,今天学习:刷题 6 道/代码提交 6 次
全部评论

相关推荐

08-15 01:16
Python
Java小萌新新萌小...:照片不用整这么大的 而且你的照片截歪了 你想找专业对口的 那普通话证写在这里其实没有什么必要 就是看着内容多点 而且里面字体大小也不一样 修改一下排版 有很多空间可以再利用一下 字大一点 不然现在这样观感不太好 再就是项目好好优化一下 加油
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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