力扣刷题 16.合并两个有序数组——简单题

class Solution {
public:
    void merge(vector<int>& nums1, int m, vector<int>& nums2, int n) {
        int i = m - 1,j = n - 1;
        int cnt = m + n;

        while(i >= 0 && j >= 0)
        {
            if(nums1[i] > nums2[j])
            {
                nums1[--cnt] = nums1[i--];
            }else
            {
                nums1[--cnt] = nums2[j--];
            }
        }

        while(j >= 0)
        {
            nums1[--cnt] = nums2[j--];
        }
    }
};

你可能感兴趣的