Leetcode Java Find All Duplicates in an Array
업데이트:
문제
코드
class Solution {
public List<Integer> findDuplicates(int[] nums) {
List<Integer> result = new ArrayList<>();
int[] count = new int[nums.length];
for (int num : nums) {
count[num - 1]++;
}
for (int idx = 0; idx < count.length; idx++) {
if (count[idx] == 2) {
result.add(idx + 1);
}
}
return result;
}
}
결과
설명
-
정수 배열 nums 내 중복된 값을 찾는 문제이다.
- 문제 풀이에 필요한 변수를 정의한다.
- result는 중복된 정수를 저장하기 위한 변수로, ArrayList로 정의한다.
- count는 중복된 값을 찾기 위한 변수로, nums의 길이만큼의 크기로 초기화한다.
-
nums를 반복하여 count의 $num - 1$ 위치의 값을 증가시킨다.
-
count를 반복하여, count가 2인 값들을 result에 넣어준다.
- 중복된 값들을 저장한 result를 주어진 문제의 결과로 반환한다.
소스
Sample Code는 여기에서 확인 가능합니다.
댓글남기기