88. Merge Sorted Array

class Solution {

    /**
     * @param Integer[] $nums1
     * @param Integer $m
     * @param Integer[] $nums2
     * @param Integer $n
     * @return NULL
     */
    function merge(&$nums1, $m, $nums2, $n) {
        $lastKey = $n + $m - 1;
        $m--;
        $n--;
        for($lastKey; $lastKey >= 0; $lastKey--) {
            if ($n < 0 && 0 <= $m) {
                $nums1[$lastKey] = $nums1[$m--];
            } elseif ($m < 0 && 0 <= $n) {
                $nums1[$lastKey] = $nums2[$n--];
            } else {
                $nums1[$lastKey] = $nums2[$n] > $nums1[$m]
                    ? $nums2[$n--]
                    : $nums1[$m--]; 
            }
        }
    }
}

Last updated