80. Remove Duplicates from Sorted Array II

안창범·2023년 8월 23일
0

문제

https://leetcode.com/problems/remove-duplicates-from-sorted-array-ii/description/?envType=study-plan-v2&envId=top-interview-150

해결 방법

  • num = nums[0], numCnt = 1로 초기화
  • nums[1 ~ 마지막]을 순회하며 아래 2가지 경우에만 값을 추가
    1. num이 nums[i]와 다른 경우 => 값 추가 및 num = nums[i], numCnt = 1로 초기화
    1. num이 nums[i]와 같고, numCnt가 1인 경우 => 값 추가 및 numCnt ++

코드

class Solution {
    public int removeDuplicates(int[] nums) {
        int k = 1;
        int num = nums[0];
        int numCnt = 1;

        for (int i = 1 ; i < nums.length ; i ++) {
            if (nums[i] != num) {
                nums[k ++] = nums[i];
                num = nums[i];
                numCnt = 1;
            } else if (numCnt == 1) {
                numCnt ++;
                nums[k ++] = nums[i];
            }
        }

        return k;
    }
}

결과

0개의 댓글

관련 채용 정보