当前位置:首页 » 存储配置 » 哈希链表存储比较失败的查找长度

哈希链表存储比较失败的查找长度

发布时间: 2022-07-22 01:47:23

㈠ 哈希函数那块儿的失败查找长度怎么算啊

查找失败的话,就是要从失败的位置开始,找到可以插入位置的次数。查找失败的位置记作第一次,然后顺序往后找(顺序往后,如果找到的话,失败的次数就是从查找失败位置到找到可插入位置的总长度;如果到表尾还没找到空插入,就返回到表头重新找,直到找到可插入位置的总次数)。找出所有关键字查找的失败次数,然后做和,除以表长就是了。[]

㈡ 数据结构哈希函数。求线性探测法查找失败时的评论查找长度,详解急。

因为是mod11,所以查找失败总过有11中情况。也就是 (3*k)%11的余数是0-10的时候。
逐个看下就行了:
余数为:
0: 查找1次就会发现错误(找到第一个为空的,就说明不在这个表里)
1: 2次
3: 8次
4: 7
5:6
6:5
7:4
8:3
9:2
10:1

所以结果是:(2 + 8 + 7 +6 +5 +4 + 3 +2 + 1) / 11 = 3.4545

㈢ @数据结构大神,(3)的失败后的查找长度为啥是n+1求解释!

首先,这里的顺序查找算法应该是包含哨兵的算法(就是令数组下标为0的元素的值为你要查找的关键字)。查找失败意味着n个元素都比较过了,接下来会比较下一个元素,即最后的哨兵元素(注意是从后往前查找的),然后跳出查找的循环语句。所以一共比较了n+1次。
平均查找长度公式是概率乘比较次数的求和。假设每个元素查找概率为1/n,而失败时每个元素都相当于比较n+1次,即查找失败时每个元素的查找长度一样,都是(n+1)/n。不算哨兵元素,一共有n个元素进行了查找,故ASL=n*(n+1/n)=n+1

㈣ 哈希表链地址查找不成功平均查找长度怎么计算

如果是拉链法,如果链表为空。就不需要判断第一个节点(因为根本没有)。线性法需要判断地址是否为空闲单元(因为这是特意留出空位来存东西的)

㈤ 关于哈希表查找不成功时的平均查找长度

我感觉你可能并没有仔细看那个博客上的讲解,实际上你的理解是对的,而博客上也是那样讲的。博客上是这样说的:
“求查找不成功时的平均查找长度,一般情况下分母为表长,但精确地讲是表长的有效位个数”
(红字部分)

注意这里的表长其实就是你说的16,而有效位个数其实就是12,博客随后还举了个字母表的例子进一步说明这个问题。
计算不成功AVL时,一定是依据具体hash函数计算的,正如你所言,虽然表长为16,但实际查找时最初只可能产生0-12一共13种结果,所以应该除的是13,你的理解是正确的。

有问题欢迎继续讨论。

㈥ 哈希表查找不成功的平均查找长度

所谓地址是指散列函数的hash值

采用线性探测再散列法处理冲突,查询时,当遇到第一个为空时才能认为是查找失败

热点内容
为什么安卓手机安装不了cpk 发布:2024-05-19 07:22:21 浏览:311
pythonempty 发布:2024-05-19 07:15:16 浏览:928
路由器虚拟服务器搭建 发布:2024-05-19 07:15:15 浏览:997
方舟编译器何时推送 发布:2024-05-19 07:15:10 浏览:597
魔兽世界自动钓鱼脚本 发布:2024-05-19 06:43:07 浏览:495
cbs加密 发布:2024-05-19 06:29:56 浏览:201
ssis存储过程 发布:2024-05-19 06:21:31 浏览:631
怎样删除小视频文件夹 发布:2024-05-19 05:49:29 浏览:589
开启php短标签 发布:2024-05-19 05:44:12 浏览:473
android各国语言 发布:2024-05-19 05:42:54 浏览:247