代码在下面。它在生成的数组中查找重复项。如何对其进行优化,以更快地处理大量数据?
有一些输入和输出数据的示例来想象它必须如何工作:
输入:nums = [1,2,3,1]
输出:真
输入:nums = [1,2,3,4]
输出:假
输入:nums = [1,1,1,3,3,4,3,2,4,2]
输出:真
import random
nums = list((random.randint(-100, 100) for i in range(10)))
b = False
print(nums)
for i in range(len(nums)):
for j in range(i+1, len(nums)):
if nums[i] == nums[j]:
b = True
break
print(b)
我什至想不出如何优化。
如果列表的长度不等于从该列表构造的集合的长度,则它必须包含重复项。
例如:
import random
nums = [random.randint(1, 20) for _ in range(10)]
print(nums)
print("Has duplicates" if len(set(nums)) != len(nums) else "No duplicates found")