题解 | #大根堆——寻找第K大#
寻找第K大
https://www.nowcoder.com/practice/e016ad9b7f0b45048c58a9f27ba618bf
/*将a中的元素全部存入大根堆,并将前k个大的元素存入res数组,最后的答案在res数组的最后一个位置*/ #include <queue> #include <vector> class Solution { public: int findKth(vector<int> a, int n, int K) { // write code here vector<int> res; priority_queue<int> q; for(int i = 0;i<a.size();++i) q.push(a[i]); for(int j=0;j<K;++j) { res.push_back(q.top()); q.pop(); } return res[K-1]; } };