我的思路直接尝试赋新值给nums1=nums1[:m]+nums2,但在Leetcode的运行环境中,这样的办法行不通,只是重新绑定了一个新的列表对象,原先的nums1并没有被改变,在测试的时候后台会检查原先的nums1是否有被修改,因此这种办法是行不通的,需要在原数组上一个个修改数值才行纠正还是需要用双指针的思路,判断值,然后把值填进表中初始化三个指针,分别定位在nums1(短)、nums2和nums1(长)的最后一个元素,对应的索引值分别为m-1, n-1, m+n-1,接下来依次开始判断nums1(短)和nums2的元素大小,把更大的那个放到nums1(长)的后面,这也是为什么要有第三个指针的原因,因为我们需要修改的是原始nums1例子:nums1 = [1,2,3,0,0,0,0], m = 3, nums2 = [2,4,5,7], n = 4思路:初始化三个指针的值分别为p = 2, q = 3, pos = 6,从左右边开始:判断nums1[2]和nums2[3]的大小,7>3,所以把7放到nums1[6],此时已经将nums2[3]的这个元素用掉了,所以要把num
Bangyao Wang