Leetcode88. 合并两个有序数组(python)
2019-02-28 11:07
246 查看
题目描述:
给定两个有序整数数组 nums1 和 nums2,将 nums2 合并到 nums1 中,使得 num1 成为一个有序数组。
说明:
初始化 nums1 和 nums2 的元素数量分别为 m 和 n。
你可以假设 nums1 有足够的空间(空间大小大于或等于 m + n)来保存 nums2 中的元素。
实例:
输入:
nums1 = [1,2,3,0,0,0], m = 3
nums2 = [2,5,6], n = 3
输出: [1,2,2,3,5,6]
解法1:
class Solution: def merge(self, nums1, m, nums2, n): """ :type nums1: List[int] :type m: int :type nums2: List[int] :type n: int :rtype: void Do not return anything, modify nums1 in-place instead. """ while m > 0 and n > 0: if nums1[m-1] > nums2[n-1]: nums1[m+n-1] = nums1[m-1] m -= 1 else: nums1[m+n-1] = nums2[n-1] n -= 1 if n > 0: nums1[:n] = nums2[:n]
解法2:
class Solution: def merge(self, nums1, m, nums2, n): """ :type nums1: List[int] :type m: int :type nums2: List[int] :type n: int :rtype: void Do not return anything, modify nums1 in-place instead. """ nums1[m:m+n] = nums2[:n] nums1.sort()
相关文章推荐
- LeetCode 88. 合并两个有序数组
- leetcode 88. 合并两个有序数组
- leetcode88. 合并两个有序数组
- LeetCode—88. 合并两个有序数组
- LeetCode - 88. 合并两个有序数组
- 数据结构与算法[LeetCode]—两个有序数组合并及找中点问题
- LeetCode 21. 合并两个有序链表 Python
- [leetcode]Merge Sorted Array (两个有序数组的合并 C语言实现)
- LeetCode题解(python)-4. 寻找两个有序数组的中位数
- Leetcode 88 Merge Sorted Array 合并两个有序数组
- Java&LeetCode 初入门——088. 合并两个有序数组
- LeetCode4.python实现:寻找两个有序数组中的中位数问题☆☆☆
- LeetCode21.python实现: 合并两个有序链表问题☆
- leetcode之数组类之数组的旋转与分治类-----OJ 189/33/81/153/154 数组旋转 旋转数组搜索 88 有序数组合并 4 两个有序数组寻找第K个元素/中位数 35 寻找插入位置
- LeetCode--Merge Two Sorted Lists(合并两个有序链表)Python
- leetcode 合并两个有序数组
- 【LeetCode】88 合并两个有序数组
- 两个有序数组的合并,python版 推荐
- 【leetcode】合并两个有序数组
- LeetCode题解(python)-21. 合并两个有序链表