我读到该列表需要 O(n) 来搜索,而 set 需要 O(1)。
1)我不明白为什么搜索需要不同的时间,即使它们包含多个元素。
2) 为什么使用集合而不是列表会有很大的不同? python list 和 python set 之间的区别是什么,尤其是在搜索时。
3) 考虑到内存和时间,使用 list 或 python 哪个更好
答案 0 :(得分:1)
集合和列表之间的一些主要区别。
这一切都非常简单,但是对于一个只有唯一项且顺序未确定的集合,它允许根据自身唯一地定义对象在内存中的位置。因此,当您在集合中搜索特定对象时,它已经知道该对象在内存中的预期位置。这就是为什么它是 O(1)(不需要遍历所有元素)