Saturday, 27 September 2014

Insertion Sort

$$$   INSERTION SORT    $$$

PROGRAM:

#include<iostream>
class Insertion
{
      public:int i,j,k,n,a[20],data;
      public:
      void getdata()
      {
            cout<<"\nEnter the array limit:";
            cin>>n;
            cout<<"Enter array elements:";
            for(i=0;i<n;i++)
            {
                  cin>>a[i];
            }
      }
      void sorting()
      {
            cout<<"Passes of insertion sort:\n";
            for(i=1;i<n;i++)
            {
                  data=a[i];
                  for(j=i-1;(j>=0)&&(data<a[j]);j--)
                  {
                        a[j+1]=a[j];
                  }
                  a[j+1]=data;
                  cout<<"\nPass="<<i<<",\t";
                  for(k=0;k<n;k++)
                  {
                        cout<<"\t"<<a[k];
                  }
            }
      }

      void putdata()
      {
            cout<<"\nThe sorted elements are:\t";
            for(i=0;i<n;i++)
            {
                  cout<<a[i]<<"\t";
            }
      }
};
void main()
{
      Insertion is;
      cout<<"$$$ INSERTION SORT $$$";
      is.getdata();
      is.sorting();
      is.putdata();
}

OUTPUT:

$$$ INSERTION SORT $$$

Enter the array limit:       6
Enter array elements:    23           78           45           8              32           56
Passes of insertion sort:
Pass=1,                 23           78           45           8              32           56
Pass=2,                 23           45           78           8              32           56
Pass=3,                 8              23           45           78           32           56
Pass=4,                 8              23           32           45           78           56
Pass=5,                 8              23           32           45           56           78
The sorted elements are:             8              23           32           45           56           78

No comments:

Post a Comment