Insertion Sort in C & C++ – Program & Algorithm

In this instructional exercise, I will clarify about calculation for Insertion Sort in C and C++ utilizing program model. The addition sort embeds every component inappropriate spot.

The procedure behind the inclusion sort is like the way toward arranging a pack of cards. You can take a card, move it to its area in the arrangement and move the rest of the cards left or right as required.

In inclusion sort, we accept that first component A[0] in pass 1 is now arranged. In pass 2 the following second component A[1] is contrasted and the first and embedded into its appropriate spot either previously or after the main component. In pass 3 the third component A[2] is embedded into its appropriate spot, etc.

Calculation for Insertion Sort in C and C++

Let ARR is a cluster with N components

  1. Peruse ARR
  2. Rehash stage 3 to 8 for I=1 to N-1
  3. Set Temp=ARR[I]
  4. Set J=I-1
  5. Rehash stage 6 and 7 while Temp=0
  6. Set ARR[J+1]=ARR[J] [Moves component forward]
  7. Set J=J-1

[End of stage 5 internal

loop]

Set ARR[J+1]=Temp [Insert component in appropriate place]

[End of stage 2 external

loop]

Exit

Program for Insertion Sort in C

#include<stdio.h>
 
int main()
{
    int i,j,n,temp,a[30];
    printf("Enter the number of elements:");
    scanf("%d",&n);
    printf("\nEnter the elements\n");
 
    for(i=0;i<n;i++)
    {
        scanf("%d",&a[i]);
    }
 
    for(i=1;i<=n-1;i++)
    {
        temp=a[i];
        j=i-1;
 
        while((temp<a[j])&&(j>=0))
        {
            a[j+1]=a[j];    //moves element forward
            j=j-1;
        }
 
        a[j+1]=temp;    //insert element in proper place
    }
 
    printf("\nSorted list is as follows\n");
    for(i=0;i<n;i++)
    {
        printf("%d ",a[i]);
    }
 
    return 0;
}

Program for Insertion Sort in C++

#include<iostream>
 
using namespace std;
 
int main()
{
    int i,j,n,temp,a[30];
    cout<<"Enter the number of elements:";
    cin>>n;
    cout<<"\nEnter the elements\n";
 
    for(i=0;i<n;i++)
    {
        cin>>a[i];
    }
 
    for(i=1;i<=n-1;i++)
    {
        temp=a[i];
        j=i-1;
 
        while((temp<a[j])&&(j>=0))
        {
            a[j+1]=a[j];    //moves element forward
            j=j-1;
        }
 
        a[j+1]=temp;    //insert element in proper place
    }
 
    cout<<"\nSorted list is as follows\n";
    for(i=0;i<n;i++)
    {
        cout<<a[i]<<" ";
    }
 
    return 0;
}
Insertion Sort in C & C++ – Program & Algorithm

Leave a Comment

error: Alert: Content is protected!!