哈希表线性,二次和单独链接之间的主要区别

时间:2015-09-15 14:06:58

标签: java hashtable

Linear在哪里与Quadratic不同?

在put和get和expand方面(调整哈希表的大小)

使用Quadratic来分离链接,它在代码中有何不同......

由于我将这个算法保持为线性,但我不知道其他算法是如何区别的:

  1. 检索密钥k
  2. 计算散列函数h [k] =表格的k%大小
  3. 如果哈希表在计算的哈希值位置为空       然后在h [k]处插入密钥 其他     我们需要在哈希表中找到另一个空位以在表中插入密钥

1 个答案:

答案 0 :(得分:0)

  

使用Quadratic来分离链接,它在代码中有何不同

这听起来像一个不一致的问题。线性/二次方是在开放寻址哈希表的相同设计空间内的不同探测技术,而单独的链接是另一个空间(近地址)。

您的算法匹配任何开放寻址方案,包括二次探测。探索在你的最后一步进入故事,“寻找另一个空虚的地方”。使用线性探测,您只需逐个遍历数组,而使用二次探测,您可以使用二次公式告诉您下一步的位置。