#include <iostream>
#include <cstdio>
#include <cmath>
#include <cstring>
#include <algorithm>
using namespace std;
int n, a[1000001];
void qsort(int l, int r){
int mid = a[(l + r) / 2];
int i = l;
int j = r;
while(i <= j){
while(mid > a[i]) i++;
while(mid < a[j]) j--;
if(i <= j){
swap(a[i], a[j]);
i++;
j--;
}
}
if(l < j) qsort(l, j);
if(i < r) qsort(i, r);
}
int main(){
scanf("%d", &n);
for(int i = 1; i <= n; i++){
scanf("%d", &a[i]);
}
qsort(1, n);
for(int i = 1; i <= n; i++){
printf("%d ", a[i]);
}
return 0;
}
快速排序模板
最新推荐文章于 2021-08-10 22:29:12 发布