您的位置:首页 > 编程语言 > Python开发

LeetCode88. 合并两个有序数组 python

2019-04-10 19:08 447 查看

不借助额外的数组 

[code]class Solution:
def merge(self, nums1, m, nums2, n):
while m>0 and n >0:
if nums1[m-1] >= nums2[n-1]:
nums1[m+n-1] = nums1[m-1]
m = m -1
else :
nums1[m+n-1] = nums2[n-1]
n = n-1
if n > 0 :
nums1[:n] = nums2[:n]

借助另外一个数组

[code]class Solution:
def merge(self, nums1, m, nums2, n):

nums = [n for n in nums1]
i = 0
j = 0
p = 0
while i<m and j<n:
if nums[i]<=nums2[j]:
nums1

= nums[i] i = i+1 else: nums1[p] = nums2[j] j = j+1 p = p+1 if j<n: while j<n: nums1[p] = nums2[j] j = j+1 p = p+1 else: while i<m: nums1[p] = nums[i] i= i+1 p = p+1

[p] 

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: