【问题标题】:How to calculate average key comparisons in a hashtable?如何计算哈希表中的平均键比较?
【发布时间】:2019-11-26 16:20:14
【问题描述】:

假设我有一个带有单独链接的哈希表。 它有键:1547、2333、6982、3356、1544 它具有 x mod 7 的哈希函数。

哈希表:

|1547|

|    |

|2333|

|6982| -> |3356|

|1544|

假设我正在搜索的每个键都是成功的,我可以像下面这样计算平均键比较吗?:

如果我正在寻找未碰撞的键(1547,2333,1544),则只需进行一次比较。因此,基于哈希表,我有 3 个比较。

对于6982->3356,需要2次比较。

因此,平均而言,我有 (3+2)/5 = 1 个比较。

【问题讨论】:

    标签: data-structures hashtable


    【解决方案1】:

    您的算术有点偏离:您数的是 3356,但忘记了 6982(这也是一个关键)。

    正确的计算是

    (4*1 + 1*2) / 5 = 1.2
    

    【讨论】:

      猜你喜欢
      • 2013-10-17
      • 1970-01-01
      • 2017-03-01
      • 2015-10-26
      • 1970-01-01
      • 1970-01-01
      • 2021-05-18
      • 1970-01-01
      • 2022-07-06
      相关资源
      最近更新 更多