python - 设置转换的列表的时间复杂度是多少?

标签 python list hash set time-complexity

我注意到python官网上的set操作时间复杂度表。但是我只是想问一下将列表转换为集合的时间复杂度是多少,例如,

l = [1, 2, 3, 4, 5]
s = set(l)

我知道这实际上是一个哈希表,但它究竟是如何工作的?那么是O(n)吗?

最佳答案

是的。遍历一个列表是O(n),将每个元素添加到哈希集中是O(1),所以总操作是O(n)

关于python - 设置转换的列表的时间复杂度是多少?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34642155/

相关文章:

python - 自动装饰类中的每个实例方法

python - 在 Python 中从文件创建列表

python - 如何使用 bisect 在需要时计算数组中进行搜索

python - 为什么这种切片代码比更多的过程代码更快?

audio - 音频指纹上的局部敏感哈希

python - 帮助进行数据存储查询

list - 如何对每个单独的 Int 设置限制

list - grails 2.5-如何在config.groovy中放置列表

ruby-on-rails - 如何将哈希值插入数据库?

php - 盐是包含在 phpass 哈希中还是您需要对其输入加盐?