将两个数组按顺序合并为一个数组
#include<iostream>
#include<vector>
using namespace std;
void merge(vector<int> a,vector<int> b,vector<int> &c)
{
int i=0,j=0;
while(i<a.size()&&j<b.size())
{
if(a[i]<b[j])
{
c.push_back(a[i]);
i++;
}
else
{
c.push_back(b[j]);
j++;
}
}
if(i==a.size())
{
for(int k=j;k<b.size();k++)
c.push_back(b[k]);
}
if(j==a.size())
{
for(int k=i;k<a.size();k++)
{
c.push_back(a[k]);
}
}
}
int main()
{
vector<int> a,b,c;
int n,m,temp;
cin>>n>>m;
for(int i=0;i<n;i++)
{
cin>>temp;
a.push_back(temp);
}
for(int i=0;i<m;i++)
{
cin>>temp;
b.push_back(temp);
}
merge(a,b,c);
for(int i=0;i<c.size();i++)
printf("%d ",c[i]);
}