Wednesday, 4 November 2015

Write A Program To Quick Sort Using Dynamic Array

//program for quick sort

#include<iostream>
#include<stdlib.h>
using namespace std;

void quicksort(int *,int ,int );

int main()
{
//By-Ghanendra Yadav
int *a,s,i;

cout<<"ENTER THE SIZE OF ARRAY: \n\n";
  cin>>s;

  a=(int*)malloc(s*sizeof(int));

  cout<<"ENTER THE NUMBER: ";
  for(i=0;i<s;i++)
  {
cout<<"ENTER THE ELEMENT "<<i+1<<" :";
  cin>>a[i];
}
quicksort(a,0,s-1);
  cout<<"\nSORTED ARRAY IN ACCENDING ORDER: \n\n";
  for(i=0;i<s;i++)
  cout<<a[i]<<" ";
}

void quicksort(int a[],int first,int last)
{
int pivot,j,temp,i;

      if(first<last)
{
         pivot=first;
         i=first;
         j=last;

         while(i<j)
{
             while(a[i]<=a[pivot]&&i<last)
             i++;
             while(a[j]>a[pivot])
             j--;
               
             if(i<j)
{
                 temp=a[i];
                  a[i]=a[j];
                  a[j]=temp;
             }
         }

         temp=a[pivot];
         a[pivot]=a[j];
         a[j]=temp;
       
         quicksort(a,first,j-1);
         quicksort(a,j+1,last);

    }
}

Output:-



No comments:
Write comments

Recommended Posts × +