gpt4 book ai didi

python 集合与元组查找。是元组 O(1) 中的查找?

转载 作者:行者123 更新时间:2023-12-05 08:27:10 26 4
gpt4 key购买 nike

最近我在这里看到一个关于 python 的问题 here

1 : Python If statement and logical operator issue .评论里有人回答说可以这样:

1 in (1, 2, 3) 检查项目集合中是否存在 1。但根据我的说法,这应该快得多 1 in {1, 2 , 3}。正如您在讨论中看到的那样,一位享有盛誉的人继续说 ( ) 对于固定大小的输入更快。并且查找速度比 { } 快。我在这里问它是因为我想根据自己的理解知道哪个是正确的,而且我不明白 ( )fiexd-size可变大小。我只是要求在那个原始问题中提供引用,所以如果我错了我可以纠正自己,但是用户坚持要清除我的计算机科学知识基础知识而没有对他的论点给出单一引用,即 lookup in Tuple is O(1 )。所以我在这里问。

最佳答案

当你说类似O(n)的东西时,你必须说出n是什么。这里,n 是元组的长度……但元组不是输入。您没有将元组作为参数或任何东西。 n 在您链接的对话中始终为 2,或者对于您的示例元组为 3,因此对于这个特定的 n , O(n)O(2)O(1) 相同。

您现在可能已经注意到,当 n 是常量时,谈论 O(n) 没有多大意义。如果你有这样的功能

def in_(element, tup):
return element in tup

你可以说运行时是 O(n) 元素比较,其中 nlen(tup),但对于类似

usr in ('Y', 'y')

谈论 n 不是很有用。

关于python 集合与元组查找。是元组 O(1) 中的查找?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45017774/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com