题解 | #合并两个有序的数组#
合并两个有序的数组
https://www.nowcoder.com/practice/89865d4375634fc484f3a24b7fe65665
#
#
# @param A int整型一维数组
# @param B int整型一维数组
# @return void
#
class Solution:
def merge(self , A, m, B, n):
# write code here
p,q = m-1,n-1
tail = m+n-1
while p >= 0 or q >= 0:
if p == -1:
A[tail] = B[q]
q -= 1
elif q == -1:
A[tail] = A[p]
p -= 1
elif A[p] > B[q]:
A[tail] = A[p]
p -= 1
else:
A[tail] = B[q]
q -= 1
tail -= 1
return A
双指针的典型应用,哪个数组的值大就放在A的后面,如果还有剩余的就把该数组的值全都添加到A中