#include<iostream>
#include<cstdio>
#include<cstdlib>
#define MAX_LEN 10
using namespace std;
int Partition(int a[],int start,int finish);
void QuickSort(int a[],int start,int finish)
{
if(start<finish)
{
int q=Partition(a,start,finish);
QuickSort(a,start,q);
QuickSort(a,q+1,finish);
}
}
int Partition(int a[],int start,int finish)
{
int i=start;
int j=finish+1;
int x=a[start];
while(true)
{
while(a[++i]<x&&i<finish);
while(a[--j]>x);
if(i>=j) break;
swap(a[i],a[j]);
}
a[start]=a[j];
a[j]=x;
return j;
}
int main()
{
int num[MAX_LEN]= {10,21,54,0,125,78,459,-123,15,48};
QuickSort(num,0,MAX_LEN);
for(int i=0; i<MAX_LEN; i++)
{
cout<<num[i]<<" ";
}
cout<<endl;
return 0;
}