Skip to main content

Merge two sorted Array

C program to merge two sorted array

#include<stdio.h>
#include<conio.h>

 void main()
 { int a[10],b[10],c[20],i,j=0,a_size,b_size;
   int *p1,*p2,*p3,*p4;
   clrscr();
   printf("\nenter the size of A: ");
   scanf("%d",&a_size);
   printf("\nenter the size of B: ");
   scanf("%d",&b_size);
   p1=&a[0];
   p2=&a[a_size-1];
   p3=&b[0];
   p4=&b[b_size-1];
   printf("\n\ninsert elements of A:(in ascending order)\n");
   for(i=0;i<a_size;i++)
   { scanf("%d",&a[i]);
   }
   printf("\n\ninsert elements of B:(in ascending order)\n");
   for(i=0;i<b_size;i++)
   { scanf("%d",&b[i]);
   }
   if(a_size<=b_size)
   {
    while(p1<=p2)
    { if(*p1<*p3)
      { c[j]=*p1;
j++;
p1++;
      }
      else
      { c[j]=*p3;
j++;
p3++;
      }
    }
    while(p3<=p4)
    { c[j]=*p3;
      j++;
      p3++;
    }
   }
   else
   {
    while(p3<=p4)
    { if(*p1<*p3)
      { c[j]=*p1;
j++;
p1++;
      }
      else
      { c[j]=*p3;
j++;
p3++;
      }
    }
    while(p1<=p2)
    { c[j]=*p1;
      j++;
      p1++;
    }
   }


   printf("\n\nsorted array :\n");
   for(i=0;i<j;i++)
   { printf(" %d",c[i]);
   }
   getch();
 }


Comments

Popular posts from this blog

Use Case Diagram for Online Book Store

Online Movie Ticket Booking Sequence Diagram

Linear search & Binary search using Template

Write a program to search an element from a list. Give user the option to perform Linear or Binary search. Use Template functions. #include<iostream> using namespace std; template <class T> void Lsearch(T *a, T item, int n) { int z=0; for(int i=0;i<n;i++) { if(a[i]== item) { z=1; cout<<"\n Item found at position = "<<i+1<<"\n\n"; } else if(z!=1) { z=0; } } if(z==0) cout<<"\n Item not found in the list\n\n"; } template <class T> void Bsearch(T *a, T item, int n) { int beg=0,end=n-1; int mid=beg+end/2; while((a[mid]!=item) && (n>0)) { if(item>a[mid]) beg=mid; else end=mid; mid=(beg+end)/2; n--; } if(a[mid]==item) cout<<"\n Item found at position = "<<mid+1<<"\n\n"; else cout<<"\n Item not found in the list\n\n"; } void main() { int iarr[10] = {2,42,56,86,87,99,323,546,767,886};