https://leetcode.com/problems/remove-duplicates-from-sorted-array/description
Q. 오름차순으로 정렬된 정수 배열 nums가 주어질때, 이 값을 중복을 제거하고 다시 nums에 출력하고 그 길이를 반환하라. 이 후 이 유효한 길이를 반환하라.
이때 추가 메모리를 사용하지 말아라.
Solution.
바로 위의 문제와 아주 유사한 문제.
이미 정렬이 되어 있으므로, 중복이 없을 시만, 앞에서부터 overwrite 해 나간다.
public int RemoveDuplicates(int[] nums)
{
int idx = 1;
int val = nums[0];
for(int k = 1; k < nums.Length; ++k)
{
if(nums[k] != val)
{
nums[idx++] = nums[k];
val = nums[k];
}
}
return idx;
}
적절한 결과.
'Leetcode > Top Interview 150' 카테고리의 다른 글
[Array/String][Easy] 13. Roman To Integer (0) | 2024.05.01 |
---|---|
[Array/String][Medium] 80. Remove Duplicates from Sorted Array II (0) | 2024.04.28 |
[Array/String][Easy] 27. Remove Element (0) | 2024.04.28 |
[Array/String][Easy] 88. Merge Sorted Array (0) | 2024.04.28 |
Contains Duplicate (0) | 2021.06.02 |