思路:
- 归并排序的merge操作
- 因为要在原数组上进行操作,所以从大到小来merge
class Solution {
public void merge(int[] nums1, int m, int[] nums2, int n) {
int idx1 = m-1;
int idx2 = n-1;
int len = nums1.length;
while(idx1 >= 0 && idx2 >=0){
nums1[--len] = nums1[idx1] >= nums2[idx2] ? nums1[idx1--] : nums2[idx2--];
}
while(idx2 >= 0){
nums1[--len] = nums2[idx2--];
}
}
}