Saturday, 10 May 2014

Insertion Sort


PROGRAM:
#include<stdio.h>
#include<conio.h>
void main()
{
                int i,j,k,n,a[20],data;
                clrscr();
                printf("$$$ INSERTION SORT $$$");
                printf("\nEnter the array limit:");
                scanf("%d",&n);
                printf("Enter array elements:");
                for(i=0;i<n;i++)
                {
                                scanf("%d",&a[i]);
                }
                printf("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;
                                printf("\nPass=%d,\t",i);
                                for(k=0;k<n;k++)
                                {
                                                printf("%d\t",a[k]);
                                }
                }
                printf("\nThe sorted elements are:\t");
                for(i=0;i<n;i++)
                {
                                printf("%d\t",a[i]);
                }
                getch();
}


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