Quick sort c++ program

 Quick sort in c++

#include<iostream>

 

using namespace std;

 

int main()

{

    int i,j,n,loc,temp,min,a[30];

    cout<<"Enter the number of elements:";

    cin>>n;

    cout<<"\nEnter the elements\n";

 

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

    {

        cin>>a[i];

    }

 

    for(i=0;i<n-1;i++)

    {

        min=a[i];

        loc=i;

        for(j=i+1;j<n;j++)

        {

            if(min>a[j])

            {

                min=a[j];

                loc=j;

            }

        }

 

        temp=a[i];

        a[i]=a[loc];

        a[loc]=temp;

    }

 

    cout<<"\nSorted list is as follows\n";

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

    {

        cout<<a[i]<<" ";

    }

 

    return 0;

}

*************"*********†***************"***

1. We first pick a pivot element. There are various ways to pick a pivot element.

  • Pick first element
  • Pick last element
  • Pick a random element
  • Pick median element

So we can use anyone of above methods to pick the pivot element. In the program given below I have picked first element as pivot.

2. Now all the elements smaller than pivot are placed at its left while elements bigger are placed at right.

3. Repeat the above two steps recursively for both half.

Below is the program to implement this algorithm in C++.

Output

How many elements?6

Enter array elements:9 15 6 7 10 12

Array after sorting:6 7 9 10 12 15


Comments

Popular Posts