Это вопрос по литкоду
https://leetcode.com/problems/find-the-duplicate-number/< /а>
Вот говорят:
Вы не должны изменять массив (предположим, что массив доступен только для чтения). Вы должны использовать только константу, O(1) дополнительное пространство. Ваша сложность во время выполнения должна быть меньше O(n^2). В массиве есть только одно повторяющееся число, но оно может повторяться более одного раза.
Итак, в моем коде я создаю словарь, используя Collection в python.
Как мой код удовлетворяет этой строке. Вы должны использовать только константу, дополнительный пробел O (1). и что они подразумевают под этой строкой, они понимают космическую сложность. Ниже приведен мой код, который очищает все тестовые файлы.
from collections import Counter
class Solution:
def findDuplicate(self, nums: List[int]) -> int:
dict1=Counter(nums)
for i in dict1:
if(dict1[i]>1):
return(i)
Пожалуйста помоги. Заранее спасибо.