Missing info in the description


  • 0
    A

    The description should tell us that all the elements in nums1 stored at 0 ~ m.
    It takes me some time to realize that, otherwise we don't know where are the elements in nums1.

    Here is my solution:

    public void merge(int[] nums1, int m, int[] nums2, int n) {
    int i = m - 1;
    int j = n - 1;
    int index = m + n - 1;
    while (i >= 0 && j >= 0) {
    if (nums1[i] > nums2[j]) {
    nums1[index--] = nums1[i--];
    } else {
    nums1[index--] = nums2[j--];
    }
    }
    while (i >= 0) nums1[index--] = nums1[i--];
    while (j >= 0) nums1[index--] = nums2[j--];
    }


Log in to reply
 

Looks like your connection to LeetCode Discuss was lost, please wait while we try to reconnect.