#include "stdio.h"
#include "conio.h"
void Quick_Sort(int *,int ,int );
int p=0;
void main()
{
int k[10]={42,23,74,11,65,58,94,36,99,87};
int lb=0,ub=9,i;
clrscr();
Quick_Sort(k,lb,ub);
for(i=0;i<10;i++)
{
//printf(" %d ",k[i]);
}
getch();
}
void Quick_Sort(int k[10],int lb,int ub)
{
int flag=1;
int key,temp,i,j,m;
if(ub>lb)
{
i=lb;
j=ub+1;
key = k[lb];
while(flag)
{
i=i+1;
while(k[i]
{
i=i+1;
}
j=j-1;
while(k[j]>key)
{
j=j-1;
}
if(i
{
printf("\n Interchange : %d <-> %d \n",k[i],k[j]);
temp=k[i];
k[i]=k[j];
k[j]=temp;
}
else
{
flag=0;
}
}
printf("\n By First : %d <-> %d \n",k[lb],k[j]);
temp=k[lb];
k[lb]=k[j];
k[j]=temp;
printf("\n pass = %d \n",p++);
for(m=0;m<10;m++)
{
printf(" %d ",k[m]);
}
Quick_Sort(k,lb,j-1);
Quick_Sort(k,j+1,ub);
}
else
{
return;
}
}