#include<stdio.h>
#include<conio.h>
int Qsort(int *arr,int min,int max)
{
int ploc=min,j,tmp;
for(j=min+1;j<=max;j++)
{
if(arr[j]<arr[min])
{
ploc++;
tmp=arr[j];
arr[j]=arr[ploc];
arr[ploc]=tmp;
}
}
tmp=arr[ploc];
arr[ploc]=arr[min];
arr[min]=tmp;
return ploc;
}
void quicksort(int *arr,int min,int max)
{
int ploc;
if(min<max)
{
ploc=Qsort(arr,min,max);
quicksort(arr,min,ploc-1);
quicksort(arr,ploc+1,max);
}
}
void main()
{
int *arr,size,i;
printf("\nEnter the size of the Array:");
scanf("%d",&size);
arr=(int*)malloc(sizeof(int)*size);
printf("\nEnter any %d Numbers:\n",size);
for(i=0;i<size;i++)
scanf("%d",&arr[i]);
quicksort(arr,0,size-1);
printf("\n\nSorted Array:");
for(i=0;i<size;i++)
printf("%d ",arr[i]);
getch();
}
No comments:
Post a Comment