SDUT OnlineJudge
#include<iostream>
using namespace std;
void Quick_Sort(int *arr, int begin, int end);
int main()
{
int n;
cin>>n;
int a[100000];
for(int i = 0;i<n;i++)
{
cin>>a[i];
}
Quick_Sort(a,0,n-1);
for(int i = 0;i<n;i++)
{
cout<<a[i]<<" ";
}
return 0;
}
void Quick_Sort(int *arr, int begin, int end){
if(begin > end)
return;
int tmp = arr[begin];
int i = begin;
int j = end;
while(i != j){
while(arr[j] >= tmp && j > i)
j--;
while(arr[i] <= tmp && j > i)
i++;
if(j > i){
int t = arr[i];
arr[i] = arr[j];
arr[j] = t;
}
}
arr[begin] = arr[i];
arr[i] = tmp;
Quick_Sort(arr, begin, i-1);
Quick_Sort(arr, i+1, end);
}