由于输入的两组数字都不是有序的
所以可以有三种方式供选择
第一种,边输入 边插入排序 代码相对简单
第二种,分别输入 排序 再一起组合 空间复杂度高
第三种,整体输入 一并排序 这种效率最高
按第一种方式 代码如下
#include
int a[2000000];
int main()
{
int m, n;
int i, j,t;
scanf("%d", &m);
for(i = 0; i < m; i ++)
{
scanf("%d", &t);
for(j = i-1; j >= 0; j --)
{
if(a[j] >= t) break;
a[j + 1] = a[j];
}
a[j + 1] = t;
}
scanf("%d", &n);
for(i = m; i < m+n; i ++)
{
scanf("%d", &t);
for(j = i-1; j >= 0; j --)
{
if(a[j] >= t) break;
a[j + 1] = a[j];
}
a[j + 1] = t;
}
for(i = 0; i < m+n-1; i ++)
printf("%d ", a[i]);
printf("%d\n", a[i]);
return 0;
}