合并有序数组面试题与优化策略.pdfVIP

  • 1
  • 0
  • 约1.15千字
  • 约 2页
  • 2026-07-22 发布于北京
  • 举报

合并两个有序数组

A.求解法

1.题目信息

问题是不需要有返回值的;

需要在问题的输入上进行修改;

$m+n0$,意味着返回一定是有意义的;

2.算法思路

将nums2到nums1的后半部分,调用现有的排序算法;

当不考虑使用内置算法求解时,如果空间要求是O(1),那么可以考虑使用排序的思想将,

nums2中的数,输入到nums1中去。设立指针i,在nums1数组的范围内,寻找nums2中整数可

以的位置。

思路:保证$[0,j-1]这个范围内是有序的。

(1)如果$nums[i]\lenums[j]$,$i++$;

(2)如果$nums[i]nums[j]$,$i$的位置应该放置$nums[j]$,对$i$和$j$之间的整数进行一

次平移。

B顺序归并

1.算法思路

利用空间交换时间:开辟额外数组,避免数组的整数位移;

思路:从nums1中下标$[0,j-1]$有序,到$[0,i+j]$有序,其中$j\in[0,m+n-1]$是

nums1的下标,$i\in[0,

文档评论(0)

1亿VIP精品文档

相关文档