有没有人有实施布谷鸟哈希 http://en.wikipedia.org/wiki/Cuckoo_hashing在C语言中?如果有一个开源的非 GPL 版本那就完美了!
既然 Adam 在评论中提到了它,有人知道为什么它没有被太多使用吗?这只是一个实施问题还是良好的理论特性在实践中没有实现?
正如其他答案所指出的那样,最简单的布谷鸟哈希表确实要求该表为半空。然而,这个概念已经被推广到d-ary cuckoo 哈希,其中每个键都有d可能的嵌套位置,而不是简单版本中的 2 个位置。
可接受的负载因数迅速增加d增加了。只为d=3,您已经可以使用大约 75% 的满表。缺点是你需要d独立的哈希函数。我是 Bob Jenkins 为此目的的哈希函数的粉丝(请参阅http://burtleburtle.net/bob/c/lookup3.c http://burtleburtle.net/bob/c/lookup3.c),您可能会发现它在布谷鸟哈希实现中很有用。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)