思路: 后面开始放置元素.
class Solution {
public:
void merge(vector<int>& nums1, int m, vector<int>& nums2, int n) {
int i=m-1;
int j=n-1;
int index = n + m -1;
for(; index >= 0; index--){
if( i>=0 && j >=0 && nums1[i] > nums2[j]){
nums1[index] = nums1[i];
i--;
}else if(i>=0 && j >=0 && nums1[i] <= nums2[j]){
nums1[index] = nums2[j];
j--;
}else if( i<0 && j>=0){
nums1[index] = nums2[j];
j--;
}else if( j<0 && i>=0){
nums1[index] = nums1[i];
i--;
}
}
return;
}
};
原文:https://www.cnblogs.com/eat-too-much/p/14842805.html