Leetcode Java Unique Number of Occurrences
업데이트:
문제
코드
class Solution {
public boolean uniqueOccurrences(int[] arr) {
Map<Integer, Integer> map = new HashMap<>();
for (int num : arr) {
map.put(num, map.getOrDefault(num, 0) + 1);
}
Set<Integer> set = new HashSet<>();
for (int value : map.values()) {
if (!set.add(value)) {
return false;
}
}
return true;
}
}
결과
설명
-
arr의 각 숫자들이 고유한 갯수로 나타나는지 검증하는 문제이다.
- 문제 풀이에 필요한 변수를 정의한다.
- map은 arr의 각 숫자 별 갯수를 계산하기 위한 변수로, HashMap으로 초기화하고 arr을 반복하여 갯수를 계산해준다.
- set은 갯수가 고유한지 검증하기 위한 변수로, HashSet으로 초기화한다.
-
map의 value들을 반복하여 set에 value를 넣어주다가 존재하는 값이 존재하면, false를 주어진 문제의 결과로 반환한다.
- 반복이 완료되면 각 숫자가 고유한 갯수로 존재하므로, true를 주어진 문제의 결과로 반환한다.
소스
Sample Code는 여기에서 확인 가능합니다.
댓글남기기