solution1 : sort函数
class Solution {
public void merge(int[] nums1, int m, int[] nums2, int n) {
for (int i = 0; i != n; ++i) {
nums1[m + i] = nums2[i];
}
Arrays.sort(nums1);
}
}
solution2 : 双指针
class Solution {
public void merge(int[] nums1, int m, int[] nums2, int n) {
int i = m-1, j = n-1;
int tail = m+n-1;
int current;
while(i>=0 || j>=0){
if(i==-1){
current = nums2[j];
j--;
}else if(j==-1){
current = nums1[i];
i--;
}else if (nums1[i]>nums2[j]){
current = nums1[i];
i--;
}else{
current = nums2[j];
j--;
}
nums1[tail] = current;
tail--;
}
}
}