#include<string>
using namespace std;
int partion(int a[],int left,int right)
{
int privot;
privot =a[left];
while(left<right)
{
while((left<right) && ( privot<=a[right]))
{
right -- ;
}
a[left]=a[right];
while( (left<right) && ( privot>=a[left]))
{
left ++;
}
a[right]=a[left];
}
a[left]=privot;
return left;
}
void quickSort(int a[],int p,int r)
{
int q;
if(p<r){
q=partion(a,p,r);
quickSort(a,p,q-1);
quickSort(a,q+1,r);
}
}
int main()
{
int a[8]={5,2,7,9,0,2,4,1};
quickSort(a,0,7);
for(int i=0;i<8;i++)
cout<<a[i]<<" ";
cout<<endl;
}