[erlang-questions] Ets bag complexity
Sverker Eriksson
<>
Mon Dec 10 15:12:10 CET 2012
Gleb Peregud wrote:
> Hello list
>
> As far as I can understand from paper [1] by Scott Lystic Fritchie ETS
> tables of 'bag' type are implemented as a hash table with linear
> arrays of values attached to each key?
>
> So, are the following statements correct for bag ETSes?
> - lookup and delete operations for key which has K values is of
> average complexity O(1+K)
> - insert operations are amortized O(1) (sometimes resizing of arrays is needed)
>
insert in bag is also O(1+K) as we have to make sure that we do not
insert duplicates.
> - select operations are O(N+K) where N is a number of keys, K is
> number of values
>
>
I guess you mean O(N*K) if K is average number of values per key. In
other words traversal of the entire table.
/Sverker, Erlang/OTP
More information about the erlang-questions
mailing list