题解 | #有序序列合并#用函数完成有序合并
有序序列合并
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; }