44问答网
所有问题
请问这道二分查找的平均长度为什么不能用公式直接算出?
在一个长度为12的有序表中,按二分查找法对该有序表进行查找,在表内各元素等概率的情况下,查找所需的平均查找长度为多少? 书上不是有个公式log2(n+1)-1吗?为什么不能直接用这个公式
举报该问题
推荐答案 2020-12-11
设关键字个数为n,在各关键字等概率查找的前提下,
1、顺序查找的平均查找长度asl=(n+1)/2,
2、在n趋于无穷大时,折半查找的asl=((n+1)log2(n+1))/n
-
1,当n大于50时,asl约等于log2(n+1)-1
3、设分块查找中将长为
n
的表分成均等的
b
个块,每块
s
个元素,则
b
=
(n
/
s)上取整,如果索引表中采用顺序查找,则asl=(b+1)/2+(s+1)/2;如果索引表中采用折半查找,则asl=(s+1)/2+log2(b+1)-1
温馨提示:答案为网友推荐,仅供参考
当前网址:
http://44.wendadaohang.com/zd/GYVDWZGKDGKWYWD6ZDK.html
相似回答
平均查找长度
是怎样计算出来
的?
答:
在等概率条件下...
平均查找长度
:ASL =(1/n)* ( j * 2^(j-1) )(j是从1到h),ASL = og2(n+1)-1。原因:用二叉树来描述,树的高度d与节点树的关系为:n=(1+2+4+... 2^(d-1))=2^d - 1;所以d = log2(n+1),每一层只需要比较一次,所以最多需要比较log2(n+1)...
二分查找
树如何计算?
答:
做这种题目的时候,应该画出二叉树。然后把叶子补足。叶子的高度就是查找失败的次数。然后求和除以叶子数目就是失败的平均
查找长度
。而非叶子节点就是成功的,高度就是成功的查找次数,然后除以非叶子节点的数目,就是成功
的平均长度
。对于11个节点,其构成的二叉树成功的查找长度是 (1x1+2X2+3x4+4x4)/...
数据结构,求
平均查找长度
,
请问这
到题没有给
出用什么
方法查找,怎么算啊...
答:
平均查找长度是由查找方法决定的。在不知道查找方法的时候,是无法求
出平均查找长度
的。不过,仔细观察这些数据,他们都是顺序排序的。所以这应该使用二分查找。所以就按
使用这个二分查找的
方法,对于每一个元素记录他的查找长度,并且求出总和。最后再除以元素的个数就是平均查找长度了。当然,这样
算出的
...
假设在有序线性表A[1..20]上进行
二分查找
平均查找长度
为?
答:
平均长度
是 74 /20 =3.7 可以这样算,
二分查找
就是将数列不停的二分 一个数列中间只有1个数,比较1次 二分后变为2个数列 然后
查找这
2个数列的中间数,比较次数等于 2个数列 * 2次 继续二分变为4个数列,比较次数变为 4 * 3 继续比较次数为8*4 继续比较次数为16*5,然而,这里的数...
大家正在搜
二分查找平均查找长度怎么算
二分查找法的平均查找长度为
二分查找成功的平均查找长度
折半查找的平均查找长度公式
二分法查找平均查找长度
哈希表查找失败的平均查找长度
分块查找平均查找长度
查找成功的平均查找长度
顺序查找失败的平均查找长度