线性探测法处理散列冲突

本篇经验主要讲述如何使用线性探测法处理散列冲突。主要针对数据结构进行学习。接下来一起来看一下吧。

工具/原料

    纸,笔

    智慧的大脑

方法/步骤

    1

    我们直接用例子来讲述。如下图所示,d是我们第一次将数据放入不成功时的地址增量,每次加1。

    线性探测法处理散列冲突

    2

    我们首先将关键码集对11取余。如下图所示。

    线性探测法处理散列冲突

    3

    我们准备表长度为11的散列表。如下图所示。

    线性探测法处理散列冲突

    4

    根据取余的值将关键码放入相应的地址中。取余结果为几,地址就是几。

    线性探测法处理散列冲突

    5

    同时将每一个关键码需要进行几次放置写在关键码下方。比如我们29取余的值是7,但是7的位置上已经有关键码了,那么我们放置第一次的时候没有成功,那么根据增量,我们看7+1的位置还没有关键码,那么我们第二次放置时就成功了,下方就标上2。

    线性探测法处理散列冲突

    6

    接下来我们计算散列表的成功平均查找长度。我们将刚刚在下方标好的数字相加,将该值除以关键码个数9。因为我们这里是查找成功的平均查找长度,我们并不查找散列表中的空格,所以是除以9。

    线性探测法处理散列冲突线性探测法处理散列冲突

    7

    那么不成功的平均查找长度我们该如何计算呢?比如我们查找散列表中并不存在的关键码1。我们从第0位开始查找,遇到空格停止需要查找3次;从第1位开始查找,遇到空格停止需要查找2次。依此类推,我们查找的次数即为3+2+1+8+7+6+5+4+3+2+1.将计算所得值除以11。

    线性探测法处理散列冲突线性探测法处理散列冲突

    8

    遇到空格停止是因为假如我们寻找的关键码32取余的值是10,我们寻找10的位置是空格,那么我们就可以知道10后面的位置肯定没有取余为10的值的。32的第一个地址是10, 10的位置是空格,那么散列表中是不会有32的。

    线性探测法处理散列冲突END

注意事项

    制作不易,感觉有帮助的话,就点个赞吧

温馨提示:经验内容仅供参考,如果您需解决具体问题(尤其法律、医学等领域),建议您详细咨询相关领域专业人士。
免责声明:本文转载来之互联网,不代表本网站的观点和立场。如果你觉得好欢迎分享此网址给你的朋友。
转载请注明出处:https://www.i7q8.com/jiaoyu/2127.html

打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023年07月12日
下一篇 2023年07月12日
single-end

热门百科

single-end

相关推荐

  • 用PS把相片转换为素描图片

    用PS把相片转换为素描图片,本教程主要介绍用PS如何快速把相片变成素描效果的图片。效果对比如图:...

    2024年04月18日
    0℃
  • 有哪些好看的美剧

    有哪些好看的美剧,我喜欢偏重口味一点的美剧,因此在此推荐的也主要是这个类型的。下面介绍几部我个人认为比较好看的美剧和大家共享。为了避免剧透,我只简单罗列及介绍。这些美剧也可以作为你练习英语口语的好素材。...

    2024年04月18日
    0℃
  • 不花钱健身的七个小妙招

    不花钱健身的七个小妙招,现在讲到健身,好些人,可能会想到去健身房,或者是自己到外面跑步或者是散步等。实际上,这些都是大的动作,今天,我给大家推荐一些小的方法,任何人都适合又不花钱的健身方法。...

    2024年04月18日
    0℃
  • 如何挑选适合自己的留学大学?

    如何挑选适合自己的留学大学,出国留学,通常很多人就想到美国常春藤院校,或者直接在世界大学排名上找,习惯以国内高考填报志愿的方式,冲一冲名校,退而求其次。可是,这些你辛辛苦苦搜来的大学真的适合你吗?...

    2024年04月18日
    0℃
  • 计算外螺纹中径详解

    计算外螺纹中径详解,图纸上标注为外螺纹结构,当产品加工出来以后,我们如何去测量约束它呢?我们可以用中径来进行约束,那么我们如何计算出外螺纹的中径呢?...

    2024年04月18日
    0℃
关注微信