题目:
分析:
看题解:
一个从后往前的双指针就可以腊鸭!我太菜。
代码python:
def merge(self, nums1: List[int], m: int, nums2: List[int], n: int) -> None:
c=len(nums1)-1
m=m-1
n=n-1
while c>=0:
if m==-1:
nums1[c]= nums2[n]
n=n-1
c=c-1
continue
if n==-1:
nums1[c]= nums1[m]
m=m-1
c=c-1
continue
if nums1[m]>nums2[n]:
nums1[c]=nums1[m]
m=m-1
else :
nums1[c]=nums2[n]
n=n-1
c=c-1
没有++,-- 但是还想秀一下:
def merge(self, nums1: List[int], m: int, nums2: List[int], n: int) -> None:
c=len(nums1)-1
m=m-1
n=n-1
while c>=0:
nums1[c]=max(nums1[m--] if m>=0 else -(1<<30),nums2[n--] if n>=0 else -(1<<30))
c=c-1