[LeetCode/Java] 80. Remove Duplicates from Sorted Array II

yuKeon·2023년 8월 24일
0

LeetCode

목록 보기
6/29
post-thumbnail

0. 문제

https://leetcode.com/problems/remove-duplicates-from-sorted-array-ii/


1. 문제 설명

  • 오름차순으로 정렬된 정수 배열 nums가 주어진다.
  • 배열 속 원소가 최대 2번만 등장하게 배열을 재정렬해라.

2. 문제 풀이

문제를 못 풀어서 다른 사람의 풀이를 참고했다. (참고)

2.1. 접근법

  • 배열 nums를 조회하면서 현재 원소(n)가 두 개 이전의 원소와 같은지 비교한다.
  • 두 개 이전의 원소와 같은 경우 두 번 이상 등장한 원소이므로 넘어간다.
  • 다른 경우, 새로운 원소이기 때문에 nums의 값을 덮어 씌운다.

3. 코드

class Solution {
    public int removeDuplicates(int[] nums) {
        int count = 0;
        
        for (int i : nums) {
            if (count < 2 || i > nums[count - 2]) nums[count++] = i;
        }
        return count;
    }
}

4. 결과

0개의 댓글