#include <iostream>
using namespace std;
void merge(const int list1[],int size1,const int list2[],int size2,int list3[]);
int main()
{
int list1[80],list2[80],list3[160];
int size1,size2;
cout<<"Enter list1: ";
cin>>size1;
for(int i=0;i<size1;i++)
cin>>list1[i];
cout<<"Enter list2: ";
cin>>size2;
for(int i=0;i<size2;i++)
cin>>list2[i];
merge(list1,size1,list2,size2,list3);
for(int i=0;i<size1+size2;i++)
cout<<list3[i]<<" ";
return 0;
}
void merge(const int list1[],int size1,const int list2[],int size2,int list3[])
{
int current1 = 0;
int current2 = 0;
int current3 = 0;
while(current1<size1&¤t2<size2)
{
if(list1[current1]<list2[current2])
list3[current3++]=list1[current1++];
else
list3[current3++]=list2[current2++];
}
while(current1<size1)
list3[current3++]=list1[current1++];
while(current2<size2)
list3[current3++]=list2[current2++];
}
合并两个排列好的数组
最新推荐文章于 2024-07-29 00:23:22 发布