Merge Sort program in Data Structures through Java
import java.util.Scanner;
class mergesort
{
public static void main(String args[])
{
Scanner sc=new Scanner (System.in);
int i,j,k,temp;
System.out.println("Enter size of the first list: ");
int n1=sc.nextInt();
int[] a = new int[n1];
System.out.println("Enter "+ n1 +" first list elements : ");
for(i=0;i<n1;i++)
a[i]=sc.nextInt();
System.out.println("Enter size of the second list: ");
int n2=sc.nextInt();
int[] b = new int[n2];
int[] c = new int[n1+n2];
System.out.println("Enter "+ n2 +" second list elements : ");
for(i=0;i<n2;i++)
b[i]=sc.nextInt();
for(i=0;i<=n1-2;i++)
{
for(j=i+1;j<=n1-1;j++)
{
if(a[i]>a[j])
{
temp=a[i];
a[i]=a[j];
a[j]=temp;
}
}
}
for(i=0;i<=n2-2;i++)
{
for(j=i+1;j<=n2-1;j++)
{
if(b[i]>b[j])
{
temp=b[i];
b[i]=b[j];
b[j]=temp;
}
}
}
for(i=j=k=0;i<(n1+n2);)
{
if(a[j]<=b[k])
c[i++]=a[j++];
else
c[i++]=b[k++];
if(j==n1 || k==n2)
break;
}
while(j<n1)
c[i++]=a[j++];
while(k<n2)
c[i++]=b[k++];
System.out.println("\nArray elements after sorting are : ");
for(i=0;i<(n1+n2);i++)
System.out.print("\t"+c[i]);
sc.close();
}
}
Output :-

No comments:
Post a Comment