class Solution {
public:
void merge(vector<int>& nums1, int m, vector<int>& nums2, int n) {
int count = m + n - 1;
m = m - 1;
n = n - 1;
while(count >= 0){
while(m >= 0 && n >= 0){
if(nums1[m] > nums2[n]){
nums1[count] = nums1[m];
//cout << "if 1: " << nums1[count] << endl;
m--;
//cout << "m: " << m << endl;
}
else{
nums1[count] = nums2[n];
n--;
//cout << "else 1: " << nums1[count] << endl;
//cout<< "count: " << count << endl;
}
count--;
}
if(m < 0 ){
while(n >= 0){
nums1[count] = nums2[n];
n--;
count--;
//cout << "if 2: " << nums1[count] << endl;
}
break;
}
else if(n < 0){
while(m >= 0){
nums1[count] = nums1[m];
m--;
count--;
//cout << "else 2: " << nums1[count] << endl;
//cout << "count: " << count << endl;
}
break;
}
//count--;
}
//cout << 1 << endl;
}
};自己太菜了,这么简单的代码都纠结了半天,反省。。。。
本文介绍了一个C++函数,用于合并两个已排序的整数数组。该函数通过比较两个数组的元素并将较大的元素放置在一个数组中,实现了两数组的合并。在合并过程中,如果其中一个数组的元素先被完全放入结果数组,则直接将另一个数组剩余的元素复制到结果数组中。
334

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



