Selection Sort


/*********************************************************

-> This C++ program is to perform selection sort.

-> This program works in microsoft vc++ 6.0 environment.

-> The numbers are sorted in increasing order.

**********************************************************/

#include<iostream.h>

class sorting
{
private:
 int n;
 double * array;
public:
 void input();
 void selectionsort();
 void output();
};

void sorting::input()
{
 cout<<“****************************************************\n”
  <<“This program sorts numbers in increasing order”
  <<“\n\t\tusing selection sort technique\n”
  <<“****************************************************\n”;

 cout<<“Enter how many numbers you are going to enter for sorting ::”;
 cin>>n;
 array=new double[n+1];
 cout<<“Now enter your elements ::\n”;
 for(int i=1;i<=n;i++)
  cin>>array[i];
}

void sorting::selectionsort()
{
 for(int i=1;i<=n;i++)
 {
  double min=array[i];
  int min_p=i;
        for(int j=i+1;j<=n;j++)
   if(array[j]<min)
    min=array[j],min_p=j;
  if(i!=min_p)
  {
   double t=array[i];
   array[i]=min;
   array[min_p]=t;
  }
  }
}

void sorting::output()
{
 cout<<“Now the sorted numbers are ::\n”;
 for(int i=1;i<=n;i++)
  cout<<array[i]<<‘\t’;
 cout<<endl;
}

int main()
{
 sorting obj;
 obj.input();
 obj.selectionsort();
 obj.output();
 return 0;
}

/*********************************************************************

SAMPLE OUTPUT ::

****************************************************
This program sorts numbers in increasing order
                using selection sort technique
****************************************************
Enter how many numbers you are going to enter for sorting ::7
Now enter your elements ::
1.7
1.6
1.5
1.4
1.3
1.2
1.1
Now the sorted numbers are ::
1.1     1.2     1.3     1.4     1.5     1.6     1.7
Press any key to continue

**********************************************************************/

One thought on “Selection Sort”

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s