42 lines
1.2 KiB
Python
42 lines
1.2 KiB
Python
def merge(self, nums1: list[int], m: int, nums2: list[int], n: int) -> None:
|
|
"""
|
|
Do not return anything, modify nums1 in-place instead.
|
|
"""
|
|
tmp = []
|
|
for i in range(m):
|
|
tmp.append(nums1[i])
|
|
for num in nums2:
|
|
tmp.append(num)
|
|
|
|
ind1 = 0
|
|
ind2 = 0
|
|
rlt = []
|
|
if(m == 0 or n == 0):
|
|
rlt += tmp
|
|
else:
|
|
for i in range(m + n):
|
|
if(nums1[ind1]<= nums2[ind2]):
|
|
rlt.append(nums1[ind1])
|
|
ind1 += 1
|
|
if(ind1 == m):
|
|
rlt += nums2[ind2:]
|
|
print(i, rlt)
|
|
break
|
|
else:
|
|
rlt.append(nums2[ind2])
|
|
ind2 += 1
|
|
if(ind2 == n):
|
|
rlt += nums1[ind1:]
|
|
print(i, rlt)
|
|
break;
|
|
print(i, rlt)
|
|
for i in range(len(rlt)):
|
|
nums1[i] = rlt[i]
|
|
|
|
nums1 = [2,0]
|
|
m = 1
|
|
nums2 = [1]
|
|
n = 1
|
|
print(merge(0, nums1, m, nums2, n))
|
|
|
|
|