luoheng
10/7/2019 - 2:10 AM

merge

func merge(nums1 []int, m int, nums2 []int, n int)  {
    p1, p2 := m-1, n-1
    for i := m + n - 1; i >= 0; i-- {
        if p1 < 0 || p2 < 0 {
            break
        }
        if nums1[p1] > nums2[p2] {
            nums1[i] = nums1[p1]
            p1--
        } else {
            nums1[i] = nums2[p2]
            p2--
        }
    }
    if p2 >= 0 {
        copy(nums1, nums2[:p2+1])
    }
}