数组中的第K个最大元素
//T1、数组中的第K个最大元素
// 给定整数数组 nums 和 整数k,请返回数组中第 k 个最大的元素。(你必须设计并实现时间复杂度为 O(n)的算法解决此问题)
//
//示例1:
// 输入: [3,2,1,5,6,4], k = 2
// 输出: 5
class Solution
{
public:
int findKthLargest(vector<int>& nums,int k)
{
//建大堆 —— O(N)
priority_queue<int> maxHeap(nums.begin(),nums.end());
// O(logN*k)
while (--k)
{
maxHeap.pop();
}
return maxHeap.top();
}
};