Повторяющиеся целые числа
Дан массив целых чисел nums
. Верните true
, если какое-либо значение встречается более одного раза в массиве, в противном случае верните false
.
Пример 1:
Input: nums = [1, 2, 3, 3] Output: true
Пример 2:
Input: nums = [1, 2, 3, 4] Output: false
Рекомендуемая временная и пространственная сложность
Вам следует стремиться к решению с временной сложностью O(n)
и пространственной сложностью O(n)
, где n
— размер входного массива.
Подсказка 1
Решение грубой силы заключалось бы в проверке каждого элемента по отношению к каждому другому элементу в массиве. Это было бы решение с временной сложностью O(n^2)
. Можете ли вы придумать более эффективный способ?
Подсказка 2
Можно ли проверить, является ли элемент дубликатом, не сравнивая его с каждым другим элементом? Возможно, здесь полезна какая-то структура данных.
Подсказка 3
Мы можем использовать хеш-структуру данных, такую как хеш-таблица или хеш-карта, чтобы хранить элементы, которые мы уже видели. Это позволит нам проверять, является ли элемент дубликатом, за постоянное время.