class Solution {
public:
void quick_sort(vector<int> &arr, int left, int right){
if (left>right) return ;
int temp, p_vote=arr[left], i=left, j=right;
while(i<j)
{
while(j>i && arr[j]>=p_vote){
j--;
}
while (i<j && arr[i]<=p_vote){
i++;
}
if (i<j){
temp=arr[i];
arr[i]=arr[j];
arr[j]=temp;
}
}
arr[left]=arr[i];
arr[i]=p_vote;
quick_sort(arr, left, i-1);
quick_sort(arr, i+1, right);
}
int findKthLargest(vector<int>& nums, int k) {
quick_sort(nums, 0, nums.size()-1);
return nums[nums.size()-k];
}
};
Leetcode215. 数组中的第K个最大元素--快速排序
最新推荐文章于 2022-02-02 23:16:19 发布