Algorithm Rabin-Karp算法中的伪命中率如何等于O(n/q)?

Algorithm Rabin-Karp算法中的伪命中率如何等于O(n/q)?,algorithm,hashmap,time-complexity,string-matching,rabin-karp,Algorithm,Hashmap,Time Complexity,String Matching,Rabin Karp,我在读CLRS,因为我遇到了这一行“我们可以预期假命中的数量是O(n/q),因为任意ts等于p,模q的概率可以估计为1/q。” 我把包含在34.2主题下的完整描述的网站 请解释我们如何期望虚假点击=O(n/q) 参考出于分析目的,通常假设使用的哈希函数是简单统一哈希。该假设表明,每个键都有可能被散列到,而与其他键的散列方式无关 换句话说,给定散列函数可以产生的q可能值,每个值的概率为1/q 在您链接到的示例中,他们讨论了伪命中场景,即两个不同的字符串散列为相同的值。给定一个简单的均匀散列,发生此

我在读CLRS,因为我遇到了这一行“我们可以预期假命中的数量是O(n/q),因为任意ts等于p,模q的概率可以估计为1/q。”

我把包含在34.2主题下的完整描述的网站

请解释我们如何期望虚假点击=O(n/q)


参考

出于分析目的,通常假设使用的哈希函数是
简单统一哈希
。该假设表明,每个键都有可能被散列到,而与其他键的散列方式无关

换句话说,给定散列函数可以产生的
q
可能值,每个值的概率为
1/q

在您链接到的示例中,他们讨论了伪命中场景,即两个不同的字符串散列为相同的值。给定一个简单的均匀散列,发生此事件的概率是多少

第一个字符串被散列到值
x
。第二个字符串也将散列到值
x
的概率是多少?这是
1/q


我推荐,它讨论了Karp-Rabin算法。

为了分析的目的,通常假设使用的哈希函数是
简单统一哈希
。该假设表明,每个键都有可能被散列到,而与其他键的散列方式无关

换句话说,给定散列函数可以产生的
q
可能值,每个值的概率为
1/q

在您链接到的示例中,他们讨论了伪命中场景,即两个不同的字符串散列为相同的值。给定一个简单的均匀散列,发生此事件的概率是多少

第一个字符串被散列到值
x
。第二个字符串也将散列到值
x
的概率是多少?这是
1/q

我推荐,它讨论了Karp-Rabin算法