Friday, November 19, 2021

simple program using quick sort in data structure

 #include<iostream>

using namespace std;

int partition(int arr[],int low,int high)

{

int pivot=arr[low];

cout<<endl;

cout<<"pivot is:"<<pivot<<endl;

cout<<"index:"<<low<<endl;

int p=low+1;

int q=high;

int temp;

do

{

while(arr[p]<=pivot)

{

p++;

}

while(arr[q]>pivot)

{

q--;

}

if(p<q)

{

temp=arr[p];

arr[p]=arr[q];

arr[q]=temp;

}

}while(p<q);

temp=arr[low];

arr[low]=arr[q];

arr[q]=temp;

return q;

}

void quicksort(int arr[],int low,int high)

{

if(low<high)

{

int par_ind;

par_ind=partition(arr,low,high);

{

quicksort(arr,low,par_ind-1);

quicksort(arr,par_ind+1,high);

}

}

}

int main()

{

int arr[]={4,5,8,3,2};

int n=5;

cout<<"\t\tBefore Sorting"<<endl;

  cout<<"[";

  //use loop for print element

  for(int i=0;i<n;i++)

  {

  cout<<arr[i]<<",";

}

cout<<"]";

////////////////////////////////////

quicksort(arr,0,n-1);

cout<<endl<<endl;

//print element of array after sorting

cout<<"\t\tAfter Sorting"<<endl;

  cout<<"[";

  //use loop for print element

  for(int i=0;i<n;i++)

  {

  cout<<arr[i]<<",";

}

cout<<"]";

}

No comments:

Post a Comment