题解 | #有序序列合并#用函数完成有序合并
有序序列合并
https://www.nowcoder.com/practice/a9e943b0dab142759807d0cfb6863897
#include <stdio.h>
#include <stdlib.h>
void sort_merge(int *a,int *b,int n,int m)
{
int i,j,tem;
for(i=0;i<m;i++)//合并两个数组
*(a+i+n)=*(b+i);
for(i=0;i<(m+n-1);i++)//冒泡排序
{
for(j=0;j<(m+n-i-1);j++)
{
if(*(a+j)>*(a+1+j))
{
tem = *(a+j);
*(a+j) = *(a+1+j);
*(a+1+j) = tem;
}
}
}
}
int main() {
int i,n,m;
scanf("%d",&n);
scanf("%d",&m);
int *a = (int *)malloc((n+m)*sizeof(int));
int *b = (int *)malloc(m*sizeof(int));
for(i=0;i<n;i++)
scanf("%d",a+i);
for(i=0;i<m;i++)
scanf("%d",b+i);
sort_merge(a, b, n, m);
for(i=0;i<(n+m);i++)
printf("%d ",*(a+i));
return 0;
}

