88. 合并两个有序数组
image.png这个竟然写不过,各种边界条件弄不对。看看答案吧,很清晰。
class Solution {
public:
void merge(vector<int>& nums1, int m, vector<int>& nums2, int n) {
int end = m + n - 1;
int i = m - 1;
int j = n - 1;
while (i >= 0 && j >= 0)
{
nums1[end--] = nums1[i] > nums2[j] ? nums1[i--] : nums2[j--];
}
while (j >= 0)
{
nums1[end--] = nums2[j--];
}
}
};
网友评论