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