题解 | #有序序列合并#
有序序列合并
https://www.nowcoder.com/practice/a9e943b0dab142759807d0cfb6863897
#include <stdio.h>
int main() {
int n = 0;
int m = 0;
scanf("%d %d",&n,&m);
int arr1[1000];
int arr2[1000];
int i = 0;
//输入n个整数
for(i = 0;i < n;i++)
{
scanf("%d ",&arr1[i]);
}
//输入m个整数
for(i = 0;i < m;i++)
{
scanf("%d ",&arr2[i]);
}
int j = 0;
int k = 0;
//合并打印
while(j<n && k<m)
{
if(arr1[j] < arr2[k])
{
printf("%d ",arr1[j]);
j++;
}
else
{
printf("%d ",arr2[k]);
k++;
}
}
//如果n或者m有多余的整数,在进行比较大小
if(j<n)
{
for(;j<n;j++)
{
printf("%d ",arr1[j]);
}
}
else
{
for(;k<m;k++)
{
printf("%d ",arr2[k]);
}
}
return 0;
}
