215 第K大元素 运行超时
来源:3-5 三路快排partition思路的应用 Sort Color
gin_gin
2017-10-10
老师,能麻烦看一下我的代码哪里出了问题吗?提交显示超时
int quicksort(vector<int>& nums, int l, int r) {
srand(time(NULL));
swap(nums[l], nums[l + rand() % (r - l + 1)]);
int i = l + 1, j = r;
while (i <= j) {
if (nums[i] > nums[l])
i++;
else
swap(nums[i], nums[j--]);
}
swap(nums[l], nums[j]);
return j;
}
int findKthLargest(vector<int>& nums, int k) {
int l = 0, r = nums.size() - 1;
int n = quicksort(nums, l, r);
while (n != k - 1) {
if (n < k - 1)
n = quicksort(nums, n + 1, r);
else
n = quicksort(nums, l, n - 1);
}
return nums[n];
}
谢谢!!写回答
1回答
-
112017-10-11
相似问题