Quantcast
Channel: The Crazy Programmer
Viewing all articles
Browse latest Browse all 761

C/C++ Program for Union of Two Arrays

$
0
0

Here you will get C/C++ program to find union of two arrays.

For example:

First array: {1, 3, 7, 9}

Second array: {1, 4, 6}

Union: {1, 3, 4, 7, 6, 9}

 

C/C++ Program for Union of Two Arrays

Union of Two Sorted Arrays

If two arrays are sorted then their union can be found in following way.

C Program

#include<stdio.h>

int main()
{
	int a1[20],a2[20],u[40],i,j,k,n,m;
	
	printf("Enter size of first array:");
	scanf("%d",&n);
	printf("Enter elements of first array in ascending order:\n");
	for(i=0;i<n;++i){
		scanf("%d",&a1[i]);
	}
	
	printf("\nEnter size of second array:");
	scanf("%d",&m);
	printf("Enter elements of second array in ascending order:\n");
	for(i=0;i<m;++i){
		scanf("%d",&a2[i]);
	}
	
	for(i=0,j=0,k=0;i<n&&j<m;){
		if(a1[i]<a2[j]){
			u[k]=a1[i];
			i++;
			k++;
		}
		else if(a1[i]>a2[j]){
			u[k]=a2[j];
			j++;
			k++;
		}
		else{
			u[k]=a1[i];
			i++;
			j++;
			k++;
		}
	}
	
	if(i<n){
		for(;i<n;++i){
			u[k]=a1[i];
			k++;
		}
	}
	else if(j<m){
		for(;j<m;++j){
			u[k]=a2[j];
			k++;
		}
	}
	
	printf("\nUnion of two arrays is:\n");
	for(i=0;i<k;++i){
		printf("%d ",u[i]);
	}

    return 0;
}

 

Output

Enter size of first array:4
Enter elements of first array in ascending order:
1 2 3 5

Enter size of second array:5
Enter elements of second array in ascending order:
1 3 5 7 9

Union of two arrays is:
1 2 3 5 7 9

 

C++ Program

#include<iostream>

using namespace std;

int main()
{
	int a1[20],a2[20],u[40],i,j,k,n,m;
	
	cout<<"Enter size of first array:";
	cin>>n;
	cout<<"Enter elements of first array in ascending order:\n";
	for(i=0;i<n;++i){
		cin>>a1[i];
	}
	
	cout<<"\nEnter size of second array:";
	cin>>m;
	cout<<"Enter elements of second array in ascending order:\n";
	for(i=0;i<m;++i){
		cin>>a2[i];
	}
	
	for(i=0,j=0,k=0;i<n&&j<m;){
		if(a1[i]<a2[j]){
			u[k]=a1[i];
			i++;
			k++;
		}
		else if(a1[i]>a2[j]){
			u[k]=a2[j];
			j++;
			k++;
		}
		else{
			u[k]=a1[i];
			i++;
			j++;
			k++;
		}
	}
	
	if(i<n){
		for(;i<n;++i){
			u[k]=a1[i];
			k++;
		}
	}
	else if(j<m){
		for(;j<m;++j){
			u[k]=a2[j];
			k++;
		}
	}
	
	cout<<"\nUnion of two arrays is:\n";
	for(i=0;i<k;++i){
		cout<<u[i]<<" ";
	}

    return 0;
}

 

Union of Two Unsorted Arrays

If two arrays are unsorted then their union can be found in following way.

C Program

#include<stdio.h>

int main()
{
	int a1[20],a2[20],u[40],i,j,k,n,m,flag;
	
	printf("Enter size of first array:");
	scanf("%d",&n);
	printf("Enter elements of first array:\n");
	for(i=0;i<n;++i){
		scanf("%d",&a1[i]);
	}
	
	printf("\nEnter size of second array:");
	scanf("%d",&m);
	printf("Enter elements of second array:\n");
	for(i=0;i<m;++i){
		scanf("%d",&a2[i]);
	}
	
	k=0;
	for(i=0;i<n;++i){
		u[k]=a1[i];
		k++;
	}
	
	for(i=0;i<m;++i){
		flag=1;
		for(j=0;j<n;++j){
			if(a2[i]==a1[j]){
				flag=0;
				break;
			}
		}
		
		if(flag){
			u[k]=a2[i];
			k++;
		}
	}
	
	printf("\nUnion of two arrays is:\n");
	for(i=0;i<k;++i){
		printf("%d ",u[i]);
	}

    return 0;
}

 

Output

Enter size of first array:3
Enter elements of first array:
1 3 5

Enter size of second array:4
Enter elements of second array:
1 2 3 6

Union of two arrays is:
1 3 5 2 6

 

C++ Program

#include<iostream>

using namespace std;

int main()
{
	int a1[20],a2[20],u[40],i,j,k,n,m,flag;
	
	cout<<"Enter size of first array:";
	cin>>n;
	cout<<"Enter elements of first array in ascending order:\n";
	for(i=0;i<n;++i){
		cin>>a1[i];
	}
	
	cout<<"\nEnter size of second array:";
	cin>>m;
	cout<<"Enter elements of second array in ascending order:\n";
	for(i=0;i<m;++i){
		cin>>a2[i];
	}
	
		k=0;
	for(i=0;i<n;++i){
		u[k]=a1[i];
		k++;
	}
	
	for(i=0;i<m;++i){
		flag=1;
		for(j=0;j<n;++j){
			if(a2[i]==a1[j]){
				flag=0;
				break;
			}
		}
		
		if(flag){
			u[k]=a2[i];
			k++;
		}
	}

	cout<<"\nUnion of two arrays is:\n";
	for(i=0;i<k;++i){
		cout<<u[i]<<" ";
	}

    return 0;
}

The post C/C++ Program for Union of Two Arrays appeared first on The Crazy Programmer.


Viewing all articles
Browse latest Browse all 761

Trending Articles