- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我正在阅读 CLRS,因为我遇到了这条线“然后我们可以预期虚假命中的数量是 O(n/q),因为任意 ts 的机会等于 p,模 q,可以估计为 1/q。”
我将包含完整描述的网站放在 34.2 主题下
请解释我们如何预期虚假命中 = O (n/q)
供引用http://staff.ustc.edu.cn/~csli/graduate/algorithms/book6/chap34.htm
最佳答案
为了分析的目的,通常假设使用的散列函数是Simple Uniform Hashing
。该假设表明每个键被散列的可能性相同,而与其他键的散列方式无关。
换句话说,给定 q
个哈希函数可能产生的值,每个值的概率为 1/q
。
在您链接到的示例中,他们讨论了 虚假命中 情况,当两个不同 字符串散列为相同的值时。给定一个简单的统一哈希,这个事件的概率是多少?
第一个字符串被散列为值 x
。第二个字符串也被散列为值 x
的概率是多少?它是 1/q
。
我推荐this lecture , 其中讨论了 Karp-Rabin 算法。
关于algorithm - Rabin Karp 算法中的 Spurious Hits 如何等于 O (n/q)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36965063/
我正在尝试实现 Rabin Karp 算法的一些修改版本。我的想法是,如果我根据与每个字母相关的权重得到给定模式的哈希值,那么我就不必担心字谜,这样我就可以只选择字符串的一部分,计算它的哈希值并进行比
在 rabin 算法中取模如何帮助降低本地 horners 规则字符串匹配的复杂性。请任何人解释 最佳答案 我猜按照 Horners 规则,你的意思是将字符串视为某个基数中的数字 ("abcd"= '
我一直在尝试理解算法类的 Rabin-Karp 算法。我在理解它时遇到了很多麻烦,所以我尝试实现它(我实际上不必实现它)。我想我正确地理解了滚动哈希函数以外的所有内容。我的算法目前只适用于模式 cha
我有一个关于选择 q 和 d 的问题 in Rabin-Karp algorithm用于搜索字符串。该算法使用值 q 作为模数,使用 d 作为哈希函数。 如果我选择 q 作为 2 的幂并且 d=q-1
我在网站的论坛上看到过这个 Rabin Karp 字符串匹配算法,我有兴趣尝试实现它,但我想知道是否有人能告诉我为什么变量 ulong Q 和 ulong D 是 100007 和 256分别:S?这
我实现 Rabin-Karp 算法只是为了好玩。我遇到了这个伪代码: RABIN -KARP -MATCHER (T, P, d, q) 1 n = T.length 2 m
我正在实现 Wikipedia's Miller-Rabin algorithm但似乎没有得到甚至模糊恰当的结果。 7, 11, 19, 23 等被报道为复合 Material 。事实上,当 k>12
我从这个网站理解了 Rabin-Karp 算法:https://www.geeksforgeeks.org/rabin-karp-algorithm-for-pattern-searching/ 他们
我很清楚单个 Miller-Rabin 测试以三次对数时间运行。我知道蒙哥马利模幂和 GNFS 并且我不会问任何那些奇特的理论。我想知道的是,在特征硬件(例如,2.2 GHz Opteron 或某某显
我正在尝试制作 RSA 算法。为此,我需要 rabin-miller+witness+modular exponentiation(至少我需要使用它)。当我生成随机数以检查 rabin miller
在 Coursera 视频之一中,Rabin-Karp 滚动哈希 (http://en.wikipedia.org/wiki/Rolling_hash) 显示为: public static long
我的 previous question属于通用字符串搜索算法。我正在研究 Rabin-Karp 算法,我有一个函数模板,例如: RabinKarpMatch(char *Text, char *Se
我有 Miller-Rabin 实现 def MillerRabin(n,a): e = 0 q = n-1 while q % 2 == 0: e +=
我在实现 Karp-Rabin 的简单版本时遇到问题模式行进者;我没有得到预期的结果。这是我的例子; string='today is a good day' sub='good' 我想在上面的字符串
我正在阅读 Cormen 等人的《算法导论》中有关字符串算法的内容 以下是关于一些初等数论符号的文本。 注意:在下文中将 == 称为模等价。 给定一个整数除以另一个整数的余数的定义明确的概念,提供特殊
rolling hash Rabin-Karp算法中hashcode值过大如何处理?我使用模运算来避免负数,但是当哈希码超过我的模数(N = 83559671)时会出现问题。我将我的基数设置为素数(计
我正在为 Rabin-Karp 算法寻找高效的哈希函数。这是我的实际代码(C 编程语言)。 static bool f2(char const *const s1, size_t const n1,
我一直在使用 C++ 编写 Rabin-Karp 字符串匹配函数,但没有得到任何结果。我感觉我没有正确计算某些值,但我不知道是哪一个。 原型(prototype) void rabinKarp(str
我有兴趣实现 Rabin-Karp 算法来搜索 wiki 上所述的子字符串:http://en.wikipedia.org/wiki/Rabin-Karp_string_search_algorith
我希望使用滚动哈希函数,这样我就可以对非常大的字符串的 n-gram 进行哈希处理。 例如: “stackoverflow”,分成 5 克将是: "stack", "tacko", "ackov",
我是一名优秀的程序员,十分优秀!