合并两个有序数组
- 方法1 从左到右
void merge(vector<int>& nums1, int m, vector<int>& nums2, int n) {
vector<int> nums3(m + n);
int i=0;
int j=0;
// m=1, n=1
for(int k=0; k<m + n; k++){
if(i < m && j < n){
if(nums1[i] <= nums2[j]){
nums3[k] = nums1[i];
i++;
continue;
}
else{
nums3[k] = nums2[j];
j++;
continue;
}
}
if(i == m){
nums3[k] = nums2[j];
j++;
}
else{
nums3[k] = nums1[i];
i++;
}
}
i=0;
nums1.resize(m+n);
for(auto v : nums3){
nums1[i] = v;
i++;
}
for(auto v: nums1){
cout << " v : " << v << endl;
}
}
方法2 从右到左
203

被折叠的 条评论
为什么被折叠?



