Problem
주어진 배열에서 중복되는 값이 있는지 찾는 문제입니다.
Solution
HashSet
을 사용하여 O(n)
에 풀 수 있습니다.
HashSet.add
함수는 이미 중복된 값이 있는 경우 false 를 리턴합니다.
Java Code
class Solution {
public boolean containsDuplicate(int[] nums) {
Set<Integer> set = new HashSet<>();
for (int num : nums) {
if (!set.add(num)) {
return true;
}
}
return false;
}
}
Kotlin Code
class Solution {
fun containsDuplicate(nums: IntArray): Boolean
= nums.toList().distinct().size != nums.size
}
'알고리즘 문제 > LeetCode' 카테고리의 다른 글
[LeetCode Easy] Merge Two Sorted Lists (Java, Kotlin) (0) | 2020.11.21 |
---|---|
[LeetCode Easy] Roman to Integer (Java) (0) | 2020.11.21 |
[LeetCode Easy] Valid Anagram (Java, Kotlin) (0) | 2020.11.21 |
[LeetCode Medium] Generate Parentheses (Java) (0) | 2020.11.16 |
[LeetCode Medium] Binary Tree Inorder Traversal (Java, Kotlin) (0) | 2020.11.15 |