class Solution {
public:
void merge(vector<int>& nums1, int m, vector<int>& nums2, int n) {
int pos = m-- + n-- - 1;
while(m >= 0 && n >= 0){
nums1[pos--] = nums1[m] > nums2[n] ? nums1[m--] : nums2[n--];
}
while(n >= 0){
nums1[pos--] = nums2[n--];
}
//如果m没有遍历完怎么说都是有顺序的。
//之所以从后向前放。因为大的数字只会向后移动。
//如果是从前往后,小的数字会覆盖后面的数字。
}
};
2022-4-14 Leetcode 88. 合并两个有序数组
猜你喜欢
转载自blog.csdn.net/weixin_51187533/article/details/124167650
今日推荐
周排行