Insertion Operation in Array


Insertion operation is used to insert a new element at specific position in to one dimensional array.
In order to insert a new element into one dimensional array we have to create space for new element.
Suppose there are N elements in an array and we want to insert a new element between first and second element. We have to move last N-1 elements down in order to create space for the new element.

Algorithm For Insertion Operation in Array


  Step 1: TEMP = N-1
  POS = POS - 1
  Step 2:  Repeat Step 3 While TEMP ≥ POS
  Step 3:  A [TEMP+1] = A [TEMP]
             TEMP = TEMP – 1
  Step 4:  A [POS] = X
  Step 5:  N = N + 1


     

Program For Insertion Operation in Array


#include<stdio.h>
#include<conio.h>
#define N 5
void main()
{
      int a[N]={10,20,30,40,50};
      int POS,x;
      void traverse(int *a,int n);
      void insert(int *a,int POS,int x);
      clrscr();
      printf("Before Insertion\n");
      traverse(a,N);
      printf("Enter Position:");
      scanf("%d",&POS);
      printf("Enter Value:");
      scanf("%d",&x);
      insert(a,POS,x);
      printf("After Insertion\n");
      traverse(a,N+1);
      getch();
}
void insert(int *a,int POS,int x)
{
      POS=POS-1;
      int TEMP=N-1;
      while(TEMP>=POS)
      {
              a[TEMP+1]=a[TEMP];
              TEMP=TEMP-1;
      }
      a[POS]=x;
}
void traverse(int *a,int n)
{
      int START=0;
      while(START<n)
      {
          printf("%d\n",a[START]);
          START=START+1;
      }
}

Download Projects


Download Programs