본문 바로가기

old/Algorithm Solving

LeetCode 217. Contains Duplicate 자바 문제 풀이

반응형

문제

Problem_Link

시간복잡도: 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을 사용해도 같은 결과를 얻을 수 있습니다.
반응형