在数组中找到第 k 大的元素。
样例
样例 1:
输入:
n = 1, nums = [1,3,4,2]
输出:
4
样例 2:
输入:
n = 3, nums = [9,3,2,4,8]
输出:
4
挑战
要求时间复杂度为O(n),空间复杂度为O(1)。
注意事项
你可以交换数组中的元素的位置
class Solution {
public:
/**
* @param n: An integer
* @param nums: An array
* @return: the Kth largest element
*/
int kthLargestElement(int n, vector<int> &nums)
{
// write your code here
if(nums.size() == 0)
return -1;
sort(nums.begin(), nums.end());
return nums[nums.size()-n];
}
};