刷题刷出新高度,偷偷领先!偷偷领先!偷偷领先! 关注我们,悄悄成为最优秀的自己!

面试题

关于直接定址法,给定散列函数 H(key)=a*key+b 中常数 a 和 b 分别为 0.6 和 3,散列表长度为 20,若关键字 key 的值为 10,请计算其散列地址位置。不考虑冲突情况。

使用微信搜索喵呜刷题,轻松应对面试!

答案:

解答思路:

{thinking}首先,我们需要理解直接定址法的基本原理,即根据关键字的某个线性函数值来确定其在散列表中的位置。题目给出了具体的散列函数H(key)=a*key+b,以及常数a、b的值和散列表的长度。我们的目标是找出key值为10的关键字在散列表中的位置。

我们需要进行以下步骤:

  1. 将给定的key值代入散列函数H(key)=a*key+b中。
  2. 计算得到的结果对散列表的长度取模,以确定关键字在散列表中的位置。

最优回答:

根据散列函数H(key)=0.6key+3,当key=10时,我们有:
H(10) = 0.6
10 + 3 = 9。
然后,我们需要确定这个值在散列表中的位置。由于散列表的长度为20,所以我们需要对9进行取模运算:9 mod 20 = 9。所以,key值为10的关键字散列的地址位置为第9个位置。

创作类型:
原创

本文链接:关于直接定址法,给定散列函数 H(key)=a*key+b 中常数 a 和 b 分别为 0.6 和

版权声明:本站点所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明文章出处。

让学习像火箭一样快速,微信扫码,获取考试解析、体验刷题服务,开启你的学习加速器!

分享考题
share