| CODE:-
|
| #include<stdio.h>
|
| #include<stdlib.h>
|
|
|
|
|
|
|
| void quick_s(int a[], int p,int q)
|
| {
|
| int j;
|
| if(p<q)
|
| {
|
| j=partition(a,p,q);
|
|
|
| quick_s(a,p,j-1);
|
| quick_s(a,j+1,q);
|
|
|
| }
|
|
|
| }
|
| int partition(int a[], int m,int p)
|
| {
|
|
|
| int v,i,j,y;
|
| v=a[m];
|
| i=m;
|
| j=p+1;
|
|
|
| do{
|
| do{
|
| i=i+1;
|
| }while(a[i]<v);
|
|
|
| do{
|
| j=j-1;
|
| }while(a[j]>v);
|
|
|
| if(i<j)
|
| {
|
| y=a[i];
|
| a[i]=a[j];
|
| a[j]=y;
|
| }
|
| }while(i<=j);
|
|
|
| a[m]=a[j];
|
| a[j]=v;
|
| return j;
|
| }
|
|
|
| void dis(int a[],int n)
|
| {
|
| int i;
|
| printf("\nThe sorted elements are:");
|
| for(i=1;i<=n;i++)
|
| {
|
| printf("%5d",a[i]);
|
| }
|
| }
|
|
|
| int main()
|
| {
|
| int n,i,k;
|
| int a[100];
|
| printf("Enter the number of elements:");
|
| scanf("%d",&n);
|
| printf("\nEnter the elements:");
|
| for(i=1;i<=n;i++)
|
| {
|
| scanf("%d",&a[i]);
|
| }
|
| printf("\nThe elements are:");
|
| for(i=1;i<=n;i++)
|
| {
|
| printf("%5d",a[i]);
|
| }
|
| a[n+1]=100;
|
| quick_s(a,1,n);
|
| dis(a,n);
|
| return 0;
|
| }
|