On 2014-05-17 22:30, bearophile wrote:
Sorry, I didn't know the linked list is sorted. It's scanned sequentially, 
because you can't use a binary search on a regular linked list. Perhaps a 
skiplist is better to avoid O(n^2) behavour in presence of attacks or 
degenerate cases (in past the AA used a tree there).

    if (nodes > buckets_length * 4) rehash();

Skiplist doesn't seem necessary. As seen above, there shouldn't be much of a 
problem with long lists accumulating in some selected buckets, as long as the 
hash function is a proper hash (i.e. for any set of x (especially consecutive 
ones like 0, 1, ... n) hash(x) values cover the range of size_t evenly).

Reply via email to