### C program to sort a given array using Quick Sort algorithm

#include<stdio.h>

#define swap(a,b,c,temp1) {temp1=a[b];a[b]=a[c];a[c]=temp1;}

//Sorting an array with QUICKSORT

void sort(int *arr,int p,int q);

int partition(int *arr,int p,int q);

int main()

{

int arr[]={3,7,4,2,6,0,5};

int i;

sort(arr,0,6);

for(i=0;i<7;i++)

printf("%d",arr[i]);

return 0;

}

void sort(int *arr,int p,int q)

{

int temp;

if(p<q)

{

temp=partition(arr,p,q);

sort(arr,p,temp-1);

sort(arr,temp+1,q);

}

}

int partition(int *arr,int p, int q)

{

int pivot,i,b=p-1,temp;

pivot=arr[q];

for(i=p;i<=q-1;i++)

{

if(arr[i]<=pivot)

{

b=b+1;

swap(arr,i,b,temp);

}

}

swap(arr,b+1,q,temp);

return b+1;

}

## Comments

## Post a Comment