Simple C++ solution with merge sort
class Solution {
public:
    void merge(vector<int>& nums1, int m, vector<int>& nums2, int n) {
        int i = 0;
        int j = 0;
        vector<int> temp;
        while (i < m) {
            temp.push_back(nums1[i]);
            ++i;
        }
        i = 0;
        int senetial = 1000000001;
        
        temp.push_back(senetial);
        nums2.push_back(senetial);
        
        int steps = m + n;
        int k = 0;
        while (k < steps) {
            if (nums2[j] <= temp[i]) {
                nums1[k] = nums2[j++];
            }else {
                nums1[k] = temp[i++];
            }
            ++k;
        }

    }
};
Comments (0)