从 Python 中的元素列表中查找重复项的程序

假设我们有一个名为 nums 的元素列表,大小为 n + 1,它们是从范围 1, 2, ..., n 中选择的。众所周知,根据鸽巢原理,必定有副本。我们必须找到副本。这里我们的目标是在O(n)时间和恒定空间中找到任务。

所以,如果输入像 nums = [2,1,4,3,5,4],那么输出将是 4

示例

让我们看下面的实现来更好地理解

def solve(nums):

   q = sum(nums)

   n = len(nums)

   v = (n - 1) * (n) // 2

   return q - v

nums = [2,1,4,3,5,4]

print(solve(nums))

输入

[2,1,4,3,5,4]
输出结果
4

以上是 从 Python 中的元素列表中查找重复项的程序 的全部内容, 来源链接: utcz.com/z/357852.html

回到顶部