【发布时间】:2012-12-02 18:41:51
【问题描述】:
Python 中in 运算符的复杂度是多少?是θ(n)吗?
和下面的一样吗?
def find(L, x):
for e in L:
if e == x:
return True
return False
L 是一个列表。
【问题讨论】:
-
这取决于容器的类型,因为将它与字典或集合一起使用会比使用数组快得多。
-
@BasicWolf 我用过L,所以是list
-
@Rastegar
L并不意味着列表。seq是想要暗示列表的最常见选择。L是一个糟糕的变量名。单字母不好,大写表示它是一个类。即使它是特别的东西,Python 也是动态的,所以在这样的情况下明确说明它。 -
L表示list?我的 libtelepathy.so 可能已经过时了。 -
@GarethLatty 使用 lst 也是定义
list的好名字