2022-4-14 Leetcode88.2つのソートされた配列をマージする

ここに画像の説明を挿入

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没有遍历完怎么说都是有顺序的。
        //之所以从后向前放。因为大的数字只会向后移动。
        //如果是从前往后,小的数字会覆盖后面的数字。
    }
};

おすすめ

転載: blog.csdn.net/weixin_51187533/article/details/124167650