要求
代码
class Solution {
public:
void merge(vector<int>& nums1, int m, vector<int>& nums2, int n) {
int nums1_count = 0;
int nums2_count = 0;
vector<int> temp;
if (m == 0)
{
temp = nums2;
}
else if (n == 0)
{
temp = nums1;
}
else
{
for (int i = 0; i < m + n; i++)
{
if (nums2_count >= n)
{
temp.push_back(nums1[nums1_count]);
nums1_count++;
}
else if ((nums1[nums1_count] < nums2[nums2_count]) && (nums1_count < m))
{
temp.push_back(nums1[nums1_count]);
nums1_count++;
}
else
{
temp.push_back(nums2[nums2_count]);
nums2_count++;
}
}
}
for (int i = 0; i < m + n; i++)
{
nums1[i] = temp[i];
}
}
};