在C#中需要实现布谷鸟哈希算法

3

我看了很多关于布谷鸟哈希的 Stack Overflow 答案。

有没有人知道 C# 中一个好的布谷鸟哈希实现?


2
你是在要求作业吗? - Jirapong
没事...只是想知道有没有这样的东西。为什么要自己发明轮子呢?我可以想象还有更多的人在寻找类似的东西。 - Kees C. Bakker
2个回答

2

如果你已经有了一份C的实现,那么将其转换为C#应该很简单......请发布你遇到转换问题的C实现代码片段......


1
也许不是微不足道的,但相当简单。 - Ben Voigt
我正在转换一个Java实现,但是我无法解决泛型问题。但是阅读使用此算法的解决方案的数量让我想知道是否已经有了一个很好的C#实现。 - Kees C. Bakker

1

如果不使用布谷鸟算法,最小完美哈希表是否可行?如果是的话,这里有一个CMPH压缩、哈希和位移算法的C#实现:

Laurent Dupuis的C#压缩、哈希和位移

您可能会喜欢它胜过布谷鸟哈希。从附带的论文中可以看出:

k -perfect哈希的主要优点是,在最坏情况下只需要一次慢速内存的随机访问。而其他方案,如Litwin [15]提出的线性哈希方法和桶式布谷鸟哈希[9]则不是这种情况。


我的测试显示Laurent Dupuis的实现在大约20,000个项目以上无法工作。还有其他人看到了吗? - Nick Strupat

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接