快排
1.
#include<bits/stdc++.h>
using namespace std;
int o=0;
void qsort(int left,int right,int data[])
{
if (left>=right) return ;
int start=left;
int xend=right;
int flag=left;
while(left<right) {
while ((left<right)&&(data[right]>=data[flag])) {
right--;
}
if (data[right]<data[flag]) {
int tmp=data[right];
data[right]=data[flag];
data[flag]=tmp;
flag=right;
}
while ((left<right)&&(data[left]<=data[flag])) {
left++;
}
if (data[left]>data[flag]) {
int tmp=data[left];
data[left]=data[flag];
data[flag]=tmp;
flag=left;
}
}
qsort(start, left-1, data);
qsort(left+1, xend, data);
}
int main()
{ int n;
cin>>n;
int data[n];
while(cin>>data[o++])
{
if(getchar()=='\n')
break;
}
qsort(0,n,data);
for(int i=1;i<n+1;i++)
{
cout<<data[i]<<" ";
}
}