Дан целочисленный массив nums. Верните true, если какое-либо значение встречается в массиве хотя бы дважды, и верните false, если все элементы уникальны.
Примеры
Пример 1
Input: nums = [1,2,3,1]
Output: true
Пояснение
Элемент 1 встречается на индексах 0 и 3.
Пример 2
Input: nums = [1,2,3,4]
Output: false
Пояснение
Все элементы уникальны.
Пример 3
Input: nums = [1,1,1,3,3,4,3,2,4,2]
Output: true
Решение
Решение
/** * Временная сложность: O(N). Создание Set требует прохода по всему массиву * Пространственная сложность: O(N). В худшем случае (если все элементы уникальны) Set будет хранить все N элементов */var containsDuplicate = function(nums) { return (new Set(nums)).size < nums.length;};
Решение 2
/** * Временная сложность: O(N) (в среднем) * Пространственная сложность: O(N) */var containsDuplicate = function(nums) { const seen = new Set(); for (const num of nums) { if (seen.has(num)) { return true; } seen.add(num); } return false;};