88. Merge Sorted Array

김현민·2021년 12월 25일
0

Algorithm

목록 보기
122/126
post-thumbnail

코드


/**
 * @param {number[]} nums1
 * @param {number} m
 * @param {number[]} nums2
 * @param {number} n
 * @return {void} Do not return anything, modify nums1 in-place instead.
 */

var merge = function (nums1, m, nums2, n) {
  let first = m - 1;
  let second = n - 1;
  let i = m + n - 1;

  while (second >= 0) {
    let fVal = nums1[first];
    let sVal = nums2[second];

    if (fVal > sVal) {
      nums1[i] = fVal;
      i--;
      first--;
    } else {
      nums1[i] = sVal;
      i--;
      second--;
    }
  }
};

두개의 포인터 left , right를 가지고 nums1, nums2 의 포인터 값을 비교한다.
fVal값이 더 크면 nums1 자리에 그 값을 넣고,
sVal값이 더 크면 nums1 자리에 nums2값을 그 자리에 넣는다.

profile
Jr. FE Dev

0개의 댓글