哪个最好有两个散列函数,每个结果是n / 2位或者有一个散列函数,最终结果是n位。我们甚至可以编写任何一个语句,或者性能完全取决于用例:我试图散列的字符串类型。
示例:假设我正在散列可能很长(10 ^ 5)的普通字符串, 使用两种方法检查碰撞:
这两种方法是否更好(碰撞概率低),另一种方法?
答案 0 :(得分:1)
没有更好的'
尽可能少碰撞,重要的是什么。如果你可以使用一个哈希函数来实现这一点,那么就像在使用多重哈希函数时获得类似的低冲突次数一样好。
顺便说一下,组合多个哈希函数的方法又是一个稍微复杂的哈希函数。
因此,如果您需要哈希函数,您可以考虑:
我建议始终使用实际数据分析不同方法的表现,以确定哪种方法最适合这项工作。