반응형
문제
시간복잡도: O(n), 공간복잡도: O(n)
class Solution {
public boolean containsDuplicate(int[] nums) {
// 배열의 요소를 저장하기 위해 HashMap을 생성합니다.
HashMap<Integer, Integer> map = new HashMap<>();
// 배열의 모든 요소를 순회합니다.
for (int temp : nums) {
// HashMap에 현재 요소가 이미 존재하는지 확인합니다.
if (map.containsKey(temp)) {
// 만약 존재한다면, 배열에 중복된 요소가 있다는 뜻으로 true를 반환합니다.
return true;
} else {
// 존재하지 않는다면, HashMap에 현재 요소를 추가합니다.
// 1은 중복된 요소가 있음을 알리는 역할을 합니다.
map.put(temp, 1);
}
}
// 중복된 요소가 없다면 false를 반환합니다.
return false;
}
}
설명
- HashSet은 내부적으로 HashMap을 이용합니다. 따라서 HashSet을 사용해도 같은 결과를 얻을 수 있습니다.
반응형
'old > Algorithm Solving' 카테고리의 다른 글
LeetCode 1512. Number of Good Pairs 자바 문제 풀이 (0) | 2023.08.05 |
---|---|
LeetCode 1431. Kids With the Greatest Number of Candies 자바 문제 풀이 (0) | 2023.08.04 |
LeetCode 42. Trapping Rain Water 자바 문제 풀이 (0) | 2023.08.03 |
LeetCode 771. Jewels and Stones 자바 문제 풀이 (0) | 2023.08.02 |
LeetCode 35. Search Insert Position 자바 문제 풀이 (0) | 2023.08.01 |