关注
#include <iostream>
(30316)#include <queue>
#include <vector>
using namespace std;
class Solution {
public:
vector<int> findKSmallest(vector<int>& nums, int k) {
// 定义一个大顶堆(使用priority_queue,默认是大顶堆)
priority_queue<int> max_heap;
for (int num : nums) {
if (max_heap.size() < k) {
max_heap.push(num);
}
else if (num < max_heap.top()) {
max_heap.pop();
max_heap.push(num);
}
}
vector<int> result;
while (!max_heap.empty()) {
result.push_back(max_heap.top());
max_heap.pop();
}
return result;
}
};
int main() {
vector<int> nums = {4, 2, 7, 1, 9, 3, 5};
int k = 3;
Solution solution;
vector<int> result = solution.findKSmallest(nums, k);
for (int num : result) {
cout << num << " ";
}
cout << endl;
return 0;
}
查看原帖
点赞 评论
相关推荐
点赞 评论 收藏
分享

点赞 评论 收藏
分享


点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 你觉得实习能学到东西吗 #
31403次浏览 639人参与
# 机械人集合!你是什么工程师? #
15418次浏览 89人参与
# 现代汽车前瞻技术研发急速编程挑战赛 #
26183次浏览 212人参与
# 秋招什么时候开投比较合适? #
19423次浏览 276人参与
# 发工资后,你做的第一件事是什么 #
67630次浏览 229人参与
# 如何准备秋招 #
18371次浏览 351人参与
# 百度工作体验 #
219728次浏览 1959人参与
# 机械人与华为的爱恨情仇 #
116298次浏览 942人参与
# 工作中哪个瞬间让你想离职 #
25511次浏览 177人参与
# 硬件应届生薪资是否普遍偏低? #
73667次浏览 514人参与
# 不考虑转正,实习多久合适 #
31666次浏览 145人参与
# 影石Insta360求职进展汇总 #
123197次浏览 1069人参与
# 通信和硬件还有转码的必要吗 #
57318次浏览 526人参与
# 24届的你们都什么时候入职? #
60008次浏览 424人参与
# 面试被问期望薪资时该如何回答 #
256055次浏览 1479人参与
# 实习,不懂就问 #
42455次浏览 648人参与
# 你们公司几号发工资 #
20575次浏览 139人参与
# 软开人,秋招你打算投哪些公司呢 #
102511次浏览 958人参与
# 每个月的工资都是怎么分配的? #
25492次浏览 411人参与
# 如果你有一天可以担任公司的CEO,你会做哪三件事? #
29046次浏览 460人参与
# 你觉得现在还能进互联网吗? #
7643次浏览 130人参与