Leetcode Java Find the Duplicate Number
업데이트:
문제
코드
class Solution {
public int findDuplicate(int[] nums) {
int memory[] = new int[nums.length];
for (int num : nums) {
memory[num]++;
}
for (int num : nums) {
if (memory[num] > 1) {
return num;
}
}
return -1;
}
}
결과
설명
- 주어진 정수 배열 nums 중 중복된 값이 있는지 찾아 반환하는 문제이다.
- 배열 내 값은 nums의 크기보다 작은 수로 이루어져 있다.
- 해당 정수 배열 내 무조건 하나의 정수만 2번 혹은 그 이상 발생한다.
-
memory 배열을 nums의 크기만큼 정의한다.
-
nums를 반복하여 momory[num] 위치의 값을 증가시킨다.
-
nums를 반복하여 memory[num]의 값이 1보다 큰 경우, num을 주어진 문제의 결과로 반환한다.
- 그 외의 경우, 기본 조건에 의해 발생되지 않겠지만 반드시 반환문이 필요하므로 -1을 주어진 문제의 결과로 반환한다.
소스
Sample Code는 여기에서 확인 가능합니다.
댓글남기기