Skip to content

[Leetcode] 26. Remove Duplicates from Sorted Array ​

Problem ​

문제 링크

입력으로 주워진 배열에서 중복값을 뒤로 배치하고(이때 어떤 값으로 수정하든 상관없음) 중복이 없는 요소의 합을 리턴하라.

Solution ​

  1. 반복문을 이용하여 현재 인덱스와 다음 인덱스의 값을 비교한다.

  2. 값이 다르다면 중복되지 않는 값이라고 판단하여 기존 배열의 앞에 넣어준다

    • idx = 1와 nums[idx++] = nums[i+1]을 해준 이유는 nums[i+1]의 경우 다른 값이 들어왔을때이고, idx = 1은 맨 처음 중복하지 않는 값이다.

JS Code ​

js
/**
 * @param {number[]} nums
 * @return {number}
 */
var removeDuplicates = function(nums) {
    if (!nums.length) return 0
    let idx = 1
    
    for(let i = 0 ; i < nums.length-1; i++) {
        if (nums[i] !== nums[i+1]) {
            nums[idx++] = nums[i+1]
        }
    }
    
    return idx
};