Write a program to sort a list of elements using insertion sort algorithm
#include<stdio.h>
#include<stdlib.h>
void input(int arr[],int n)
{
int i;
printf("\n ENTER THE ELEMENTS :\n");
for(i=0;i<n;i++)
{
scanf("%d",&arr[i]);
}
}
void display(int arr[], int n )
{
int i;
printf("\n THE ELEMENTS ARE :\n");
for(i=0;i<n;i++)
{
printf(" %d ",arr[i]);
}
}
void insertionSort( int arr[] , int n)
{
int i,j,x;
for(i=1;i<n;i++)
{
x=arr[i];
j=i-1;
while(arr[j]>x && j>=0)
{
arr[j+1]=arr[j--];
}
arr[++j]=x;
printf("\n\n -------------AFTER %d PASS--------------",i);
display(arr , n);
}
}
int main()
{
int *arr,n;
printf("ENTER THE SIZE OF THE LIST ");
scanf("%d",&n);
arr=(int*)malloc(n*sizeof(int));
input(arr , n);
display(arr , n);
insertionSort(arr , n);
printf("\n\n-----------RESUIT-----------");
display(arr , n);
return 0;
}
OUTPUT :
Post a Comment
0 Comments