题解 | #有序序列合并#用函数完成有序合并

有序序列合并

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;
}

全部评论

相关推荐

点赞 收藏 评论
分享
牛客网
牛客企业服务