问题标签 [double-hashing]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
5357 浏览

hash - 如果应用双重哈希算法后仍然存在冲突怎么办?

我有一个大小为 8 的哈希表,我想在其中插入值(0、1、8、9、5、33)。
我尝试了有冲突的散列然后我尝试了双散列算法但冲突仍然发生如下:

哈希 = H1(k) = k % 8
双哈希 = H2(k) = M - (k % M)

现在我被困在这里,我不知道该怎么办。注意:我不想使用任何其他方法,我只想使用双重哈希。
提前感谢任何帮助。

0 投票
1 回答
684 浏览

c# - 具有双哈希冲突解决方案的哈希表 - 无限循环

我一直在用这个哈希表强调一段时间,但我似乎无法找到导致这些无限循环的原因。插入通常在一半左右停止。密钥由一串 64 个随机符号组成,中间用下划线分隔。需要帮助尝试调试这个!

这是 Table 构造函数,包括哈希函数和插入方法:

0 投票
1 回答
212 浏览

java - 双散列哈希表重新散列问题

我需要为学校项目实现一个具有开放寻址和双重哈希的哈希表。我最多可以添加 56 个条目,但是当它尝试添加第 57 个并重新散列它时,它说这个词存在(来自 addWord() 方法)而它不应该存在。

输出:

这是我的代码:

主方法类(一切都在破坏,因为主方法希望每个函数都是静态的)

错误似乎在 tempTable[j] = hTable[i]; 第 (166) 行。我无法弄清楚它有什么问题。任何帮助将不胜感激。我已经坚持了2天。

编辑:所以问题现在出在 doubleHash() 方法上,它在 100 个条目后给了我一个负数 -27。有人可以验证公式是否正确吗?

0 投票
1 回答
68 浏览

algorithm - 你会通过双散列算法和二次散列算法得到相同的散列图吗?

假设一个双重哈希算法,

对于二次散列算法

数组大小相同的地方(例如,两种算法都是 29)。

你能分别使用这两种算法构建相同的哈希表吗?

如果您要从桶数组中输出每个单独的键(及其各自的值),那么键(来自两种算法)会在桶数组中的同一位置吗?还是键的排序方式不同?

0 投票
1 回答
107 浏览

c - 双散列封闭散列表问题

我不明白出了什么问题。我使用橡皮鸭技术多次完成该程序。请问有什么问题吗?

输出:

我检查了 hash1()、hash2() 和 find() 函数是否正常工作,它们确实有效,检查了多个输入,一切似乎都正常工作。我不确定缺少什么或我做错了什么。请帮忙。

0 投票
1 回答
66 浏览

ocaml - Ocaml 双哈希表

我一直在寻找一种在 Ocaml 中使用双哈希表的方法,但找不到。我想做的是:

Hash: (("a",1), ("b",2), ...) ,其中提到的所有元素都不会重复,例如“a”不会再次出现,2 也不会出现。

因此,如果我找到一个像我这样的数组,[1, "b", 2, "a",...] 我可以用它的键或值替换那些出现的数字和字母:["a",2,"b",1,...] .

谢谢!

0 投票
1 回答
46 浏览

java - remove() 无法正常工作

在以下Main方法中,为什么不clapping删除最后一个单词 ( )?

输出是

clapping没有被删除。为什么?

HT.java

除了修饰符之外,代码有什么问题吗?可能与散列函数或可能与insert()or remove()

0 投票
0 回答
29 浏览

hash - 线性探测可以导致二次聚类吗?

我目前正在研究散列和冲突,所有参考资料/教程都在说线性探测会导致初级聚类,而其他探测方案(例如二次探测和双散列)可能会导致二级聚类。是否存在线性探测也可能导致二次聚类的情况?