<object id="getjk"></object>
<object id="getjk"></object>
    1. <object id="getjk"></object>
    2. <th id="getjk"></th>
      XYcooper
      • 性别: Icon_minigender_1
      • 盛世国际娱乐城博彩打不开

      ▯□☐Lintcode64 Merge Sorted Array solution 题解◘◊◘

       

      阅读更多
      □☐◘◊◘▪▫▯□☐◘◊◘▪▫▯□☐◘◊◘▪▫▯□☐◘◊◘▪▫▯□☐◘◊◘▪▫▯□☐◘◊◘▪▫▯□
      【题目描述】

      Given two sorted integer arrays A and B, merge B into A as one sorted array.

      Notice:You may assume that A has enough space (size that is greater or equal to m + n) to hold additional elements from B. The number of elements initialized in A and B are m and n respectively.
      合并两个排序的整数数组A和B变成一个新的数组。

      注意:你可以假设A具有足够的空间(A数组的大小大于或等于m+n)去添加B中的元素。

      【题目链接】
      www.lintcode.com/en/problem/merge-sorted-array/

      【题目解析】
      直观思路显然是双指针i, j同时扫描A, B,选min(A, B[j])作为下一个元素插入。但是只能利用A后面的空间来插入,这样就很不方便了。

      反向思路,merge后的数组一共有m+n个数。i, j从A, B尾部扫描,选max(A, B[j])插入从m+n起的尾部。这样也可以防止插入到A原来数字的范围内时,overwrite掉A原来的数。

      【参考答案】
      www.jiuzhang.com/solutions/merge-sorted-array/




      (责任编辑:XYcooper)
      分享到: