Insertion Sort
Posted by Vinod on September 22, 2006
/*********************************************************
-> This C++ program is to perform insertion 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 insertionsort();
void output();
};
void sorting::input()
{
cout<<”****************************************************\n”
<<”This program sorts numbers in increasing order”
<<”\n\t\tusing insertion 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::insertionsort()
{
for(int i=1;i<=n;i++)
{
double x=array[i];
for(int j=i-1;j>0&&x<array[j];j–)
array[j+1]=array[j];
array[j+1]=x;
}
}
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.insertionsort();
obj.output();
return 0;
}
/*******************************************************************
SAMPLE OUTPUT ::
****************************************************
This program sorts numbers in increasing order
using insertion 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
********************************************************************/
My Home Improvement List said
Thanks for sharing this information. Really is pack with new knowledge. Keep them coming.
index for c++ programs to implement sorting techniques « Data Structures through C & C++ for beginners said
[...] 3) Insertion Sort [...]
Ankit Pokhrel said
#include
#include
int main()
{
int num[50],N,i,j,key;
cout <> N;
cout << "\nEnter " << N << " Numbers\n";
for(int i = 0;i > num[i];
for(j = 1;j = 0 && num[i] > key)
{
//Swap two elements
num[i + 1] = num[i];
i–;
num[i + 1] = key;
}
}
//Print Output
cout << endl;
for(i = 0;i < N;i++)
cout << num[i] << ' ';
getch();
return 0;
}