成就咖啡

文章
4
资源
0
加入时间
2年10月21天

快速排序求第k小的数字

为什么要用快排求第k小的数字?快排的特点,是先找参考值x,然后排序,最后递归。我们可以在递归的过程中,判断递归时候的子数组长度,看看与x的关系。要知道,第k个小的数字无非就是从小到大排序后的第k个数字。求第k大的数字及是求第n-k+1小的数字。代码如下注意递归条件和k的变化#include<bits/stdc++.h>using namespace std;const int N = 8e6 + 6;int t,n,k,q[N];int quick_sort(int