解题思路:
(1)优先队列+小顶堆
class Solution {
public:
int findKthLargest(vector<int>& nums, int k) {
priority_queue<int,vector<int>,greater<int> > p;
for(int i=0;i<nums.size();i++) {
if(p.size()<k) p.push(nums[i]);
else if(p.size()==k && nums[i]>=p.top()) {
p.push(nums[i]);
p.pop();
}
}
return p.top();
}
};

本文解析了如何使用优先队列(小顶堆)数据结构来高效查找给定整数数组中的第k个最大元素。通过代码实例,展示了如何在O(n log k)时间内找到解决方案,适用于面试或算法竞赛场景。
1181

被折叠的 条评论
为什么被折叠?



