LeetCode 26. Remove Duplicates from Sorted Array

hwibaski·2023년 8월 24일

ps

목록 보기
3/12

26. Remove Duplicates from Sorted Array

문제

주어진 정수 배열 nums가 오름차순으로 정렬되어 있을 때, 중복된 요소를 그 자리에서 제거하여 각 고유한 요소가 한 번씩만 나타나도록 합니다. 요소들의 상대적인 순서는 유지되어야 합니다. 그 후 고유한 요소의 개수를 반환합니다.

nums의 고유한 요소 개수를 k라고 할 때, 아래 작업을 수행할 수 있습니다:

  • 배열 nums를 변경하여 처음 k개의 요소가 초기에 nums에 있던 순서대로 고유한 요소를 포함하도록 합니다. nums의 나머지 요소들은 중요하지 않습니다. nums의 크기 또한 중요하지 않습니다.
  • k를 반환합니다.

의사코드 또는 풀이 계획

swap포인터 = 1;

for (int 배열포인터 = 1; 배열의 끝까지; 배열포인터++) {
	if (nums[배열포인터] != nums[배열포인터보다 하나 작은 값]) {
    	nums[swap포인터] = nums[배열포인터]
        swap포인터++;
    }
    
    return swap 포인터

풀이

class Solution {
    public int removeDuplicates(int[] nums) {
        int swap = 1;

        for (int i = 1; i < nums.length; i++) {
            if (nums[i] != nums[i-1]) {
                nums[swap] = nums[i];
                swap++;
            }
        }

        return swap;
    }
}

0개의 댓글