class Solution:
def merge(self, A: List[int], m: int, B: List[int], n: int) -> None:
"""
Do not return anything, modify A in-place instead.
"""
cur = m+n-1
p = m-1
q = n-1
if m == 0 and n != 0:
A[0:n] = B[0:n]
while True:
if p>=0 and q>=0:
if A[p] <= B[q]:
A[cur] = B[q]
cur -= 1
q -= 1
else:
A[cur] = A[p]
cur -= 1
p -= 1
elif q>=0:
A[cur] = B[q]
cur -= 1
q -= 1
elif p>=0:
A[cur] = A[p]
cur -= 1
p -= 1
else:
break
leetcode 10.01. 合并排序的数组
最新推荐文章于 2024-07-24 14:20:14 发布