Menu
CoddyTech

Merge Sorted Array

你会得到两个整数数组 nums1 和 nums2。它们都已按非递减顺序排序。返回一个包含两个数组中所有值的数组,并且也按非递减顺序排列。两个数组中都出现的值,在结果中出现的次数等于它在两个数组中出现次数的总和。

函数

merge(nums1: integer-array, nums2: integer-array) → integer-array
nums1integer-array
第一个排序后的数组
nums2integer-array
第二个已排序数组
返回值integer-array
将两个数组的所有值合并到一个排序后的数组中,长度为 nums1.length + nums2.length

约束条件

  • 1 ≤ nums1.length, nums2.length ≤ 2000
  • -105 ≤ nums1[i], nums2[j] ≤ 105
  • nums1 和 nums2 都已按非递减顺序排序。

示例

输入
nums1 = [1, 4, 9]nums2 = [2, 3, 10]
输出
[1, 2, 3, 4, 9, 10]
解释
比较两个数组开头的值,保留较小的那个:1,然后是 nums2 中的 2 和 3,接着是 nums1 中的 4 和 9,最后是 10。结果包含全部 6 个值。
challenge icon

进阶

你能否在 O(N log k) 时间内合并 k 个已排序数组,这些数组总共包含 N 个值?

重置代码
def merge(nums1, nums2):
    # 在这里编写代码

测试 #1

测试 #2

测试 #3

参数

nums1 = [1, 4, 9]
nums2 = [2, 3, 10]

预期输出

[1, 2, 3, 4, 9, 10]