Program in c++ to sort an array using quick sort.
Program:
#include<iostream.h>
#include<conio.h>
int
a[50],SIZE;
int i,j,key;
void
qsort(int lb,int ub)
{
while(1)
{
if(lb<ub)
{
i=lb;
j=ub;
}
else
{
return;
}
key=a[lb];
i++;
while(a[i]<=key)
{
if(i==ub)
{
break;
}
i++;
}
while(a[j]>key)
{
if(j==lb)
{
break;
}
j--;
}
if(i<j)
{
int t=a[i];
a[i]=a[j];
a[j]=t;
}
else
{
break;
}
}
int t=a[lb];
a[lb]=a[j];
a[j]=t;
qsort(lb,j-1);
qsort(j+1,ub);
}
void main()
{
clrscr();
cout<<"Enter Size of an
Array:";
cin>>SIZE;
for(int i=0;i<SIZE;i++)
{
cout<<"Enter Value for
a["<<i<<"]:";
cin>>a[i];
}
qsort(0,SIZE-1);
for(i=0;i<SIZE;i++)
{
cout<<endl;
cout<<"\t\t
a["<<i<<"]:"<<a[i];
}
getch();
}
OUTPUT:
Enter Size of an Array:5
Enter Value for a[0]:2
Enter Value for a[1]:5
Enter Value for a[2]:3
Enter Value for a[3]:1
Enter Value for a[4]:4
a[0]:1
a[1]:2
a[2]:3
a[3]:4
a[4]:5