leetcode88. 合并两个有序数组

分析

归并排序

class Solution {
public:
    void merge(vector<int>& nums1, int m, vector<int>& nums2, int n) {
        int temp[m+n];
        int i=0,j=0,cnt=0;
        while(i<m&&j<n){
            if(nums1[i]<=nums2[j])
                temp[cnt++]=nums1[i++];
            else
                temp[cnt++]=nums2[j++];
        }
        while(i<m)temp[cnt++]=nums1[i++];
        while(j<n)temp[cnt++]=nums2[j++];
        for(int t=0;t<m+n;t++)nums1[t]=temp[t];
    }
};