/**
* @param {number[]} nums1
* @param {number} m
* @param {number[]} nums2
* @param {number} n
* @return {void} Do not return anything, modify nums1 in-place instead.
*/
var merge = function (nums1, m, nums2, n) {
// 逆序排序
let i = m - 1
let j = n - 1
let k = n + m - 1
// 循环条件 i和j都>=0才循环
while (i>=0 || j>=0) {
// nums1循环完了之后 将nums2拼接在nums1前
if (i < 0) {
nums1[k] = nums2[j]
k--
j--
}
// nums2循环完了之后 将nums1拼接在nums1前
else if(j<0){
nums1[k]=nums1[i]
k--
i--
}
// nums1[i]和nums2[k]进行比较 ,谁大谁拼接
else if (nums1[i] > nums2[j]) {
nums1[k] = nums1[i]
k--
i--
} else {
nums1[k] = nums2[j]
k--
j--
}
}
// 最后返回nums1
return nums1
};