源码
// 合并两个有序数组
// num1 = 1,2,3,0,0,0 nunm2 = 2,5,6
void merge(int* nums1, int numsize, int m, int* nums2, int nums2size, int n) {
int i = m - 1, j = n - 1;
for (int k= m + n -1;k >= 0; k-- ) {
if (i < 0) {
*(nums1 + k) = *(nums2 + j);
j--;
}else if(j < 0){
*(nums1 + k) = *(nums1 + i);
i--;
}else {
if (*(nums1 + i) > *(nums2 + j)) {
*(nums1 + k) = *(nums1 + i);
i--;
}else {
*(nums1 + k) = *(nums2 + j);
j--;
}
}
}
}