중복 포함

2512 단어 leetcodealgorithms
목적:

정수 배열nums이 주어지면 값이 배열에 두 번 이상 나타나면 true를 반환하고 모든 요소가 고유하면 false를 반환합니다.


패턴: 배열 및 해싱


접근하다:
  • 세트는 중복을 허용하지 않으므로 세트를 사용하십시오.
  • 배열 숫자를 살펴보고 세트에 값을 추가하고 세트에 값이 포함되어 있는지 확인하십시오.
  • 세트에 값이 포함되어 있으면 true를 반환하고 그렇지 않으면 false를 반환합니다.



  • 빅오 표기법:

    시간 복잡도: O(n)
    배열을 n번 통과하는 for 루프가 있습니다.

    공간 복잡도: O(n)
    n개의 요소를 저장하는 Set이 있습니다.

    암호:

    class Solution {
        public boolean containsDuplicate(int[] nums) {
            // Set -> doesn't allow duplicates 
            Set <Integer> hashSet = new HashSet<>();
    
            // example: [2,5,8,5]
            // set: 2, 5, 8, 5
            for(int i = 0; i < nums.length; i++){
                if(hashSet.contains(nums[i])){
                    return true;
                }
                hashSet.add(nums[i]);
            }
            return false; 
        }
    }
    

    좋은 웹페이지 즐겨찾기