题解 | #有序序列合并#

有序序列合并

http://www.nowcoder.com/practice/a9e943b0dab142759807d0cfb6863897

#include <stdio.h>
int main()
{
  int m, n, i, j, k;
  int arr1[1000] = {0};
  int arr2[1000] = {0};
  int arr3[1000] = {0};    //用新数组来记录合并后的序列,初值为0
  scanf("%d %d\n", &m, &n);
  for(i=0; i<m; i++)
    scanf("%d ", &arr1[i]);  //输入第一个有序序列
  for(i=0; i<n; i++)
    scanf("%d ", &arr2[i]);    //输入第二个有序序列
  i = 0, j = 0;   //一定一定要记得重置为0
  while(i<m && j<n)
  {   //两个数组依次出一个数比较,较小的就放到新数组中,
    if(arr1[i] <= arr2[j])
       arr3[k++] = arr1[i++];  //新数组与较小数数组下标均后移一位
    else 
       arr3[k++] = arr2[j++];
  }
  while(i<m)   //第一个数组还有没比较完的数时
         arr3[k++] = arr1[i++];  //直接全部复制到新数组中去
  while(j<n)
         arr3[k++] = arr2[j++];   //同理,若有没比较完的,直接复制过去
  for(i=0; i<m+n; i++)
        printf("%d ", arr3[i]);   //打印新数组元素
  return 0;
}

全部评论

相关推荐

学习java也有半年多了,现在准备秋招试一试,不行的话就再实习一段准备春招,大佬们帮忙看看简历呗,感觉很多笔试做的还行但是还是挂了,是不是简历有问题啊
应欢欢yhh:我打算实习和秋招一起找了。名企秋招还是太难了,中小公司就没有秋招一说吧,基本上都是实习转正的offer。我想如果先找到实习我就去,在刷一段实习经历,在这个过程中同步投秋招。
我的简历长这样
点赞 评论 收藏
分享
还排名这么靠前?
赛博小蟑螂:虽然时间长,但是他工资低啊
投递浪潮等公司10个岗位
点赞 评论 收藏
分享
评论
2
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务