leecode11.盛最多的容器

leecode26.删除有序数组中的重复项

leecode27移除元素

leecode88.合并两个有序数组

解题思路:

  1. class Solution:
  2. def merge(self, nums1, m, nums2, n):
  3. k = m + n - 1
  4. while m > 0 and n > 0:
  5. if nums1[m - 1] > nums2[n - 1]:
  6. nums1[k] = nums1[m - 1]
  7. m -= 1
  8. else:
  9. nums1[k] = nums2[n - 1]
  10. n -= 1
  11. k -= 1
  12. nums1[:n] = nums2[:n] # = nums1[m:m + n] = nums2[0:n]
  13. return nums1
  14. if __name__ == '__main__':
  15. nums1 = [1, 2, 3, 0, 0, 0]
  16. m = 3
  17. nums2 = [5, 6]
  18. n = 2
  19. s = Solution()
  20. t = s.merge(nums1, m, nums2, n)
  21. print(t)