美文网首页
Lintcode64 Merge Sorted Array so

Lintcode64 Merge Sorted Array so

作者: 代码码着玩 | 来源:发表于2017-05-07 22:16 被阅读0次

【题目描述】

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[i], B[j])作为下一个元素插入。但是只能利用A后面的空间来插入,这样就很不方便了。

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

【参考答案】

www.jiuzhang.com/solutions/merge-sorted-array/

相关文章

网友评论

      本文标题:Lintcode64 Merge Sorted Array so

      本文链接:https://www.haomeiwen.com/subject/natjottx.html