ETS操作运行时

时间:2018-08-01 17:23:15

标签: performance hashmap erlang ets

ets包的delete_object的运行时间是多少?假设有n个条目具有相同的密钥k,那么delete_object的运行时是O(n)还是O(1)?如果确实是O(1)lookup操作如何返回按插入时间排序的所有元组?

谢谢!

1 个答案:

答案 0 :(得分:4)

这个erlang邮件列表上的帖子来自2011年,但我认为它可能仍然存在:

http://erlang.org/pipermail/erlang-questions/2011-October/061705.html

Sverker Eriksson给出的答案意味着,查找时间将是O(n)与相等键的数量:

  

平均时间为分散键的插入/查找/移除的时间。一种       具有很多相同键的袋子可能会导致性能下降       导致在具有相同键(以及其他键)的对象之间进行线性搜索       恰好会散列到同一存储桶)。