AcWing 785. 快速排序模板
原题链接
简单
作者:
IAMI
,
2020-04-04 09:38:47
,
所有人可见
,
阅读 3
#include <cstdio>
#include <algorithm>
using namespace std;
const int N = 1000010;
int P[N];
void quick_sort(int p[], int l, int r)
{
if(l >= r) return;
int t = p[l+r>>1];
int i = l - 1, j = r + 1;
while(i<j)
{
do i++; while(p[i]<t);
do j--; while(p[j]>t);
if(i < j) swap(p[i], p[j]);
}
quick_sort(p, l, j);
quick_sort(p, j+1, r);
}
int main()
{
int n;
scanf("%d", &n);
for(int i=0; i<n; i++) scanf("%d", &P[i]);
quick_sort(P, 0, n-1);
for(int i=0; i<n; i++) printf("%d ", P[i]);
return 0;
}