永发信息网

【asl是什么意思】分块查找平均查找长度计算公式是什么顺序查找和折半查找标明每个...

答案:2  悬赏:40  手机版
解决时间 2021-02-01 15:38
  • 提问者网友:两耳就是菩提
  • 2021-01-31 20:48
【asl是什么意思】分块查找平均查找长度计算公式是什么顺序查找和折半查找标明每个...
最佳答案
  • 五星知识达人网友:傲气稳了全场
  • 2021-01-31 21:21
【答案】 设关键字个数为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 追问: 144个记录的文件,分块查找法,折半查找确定块,每块长度8,则平均查找长度是多少 帮做一下,我算的结果和答案不一样 追答: 差别不会很大吧,因为那个ASL=(s+1)/2+log2(b+1)-1中的折半查找用的是理论值 144条记录,每块8条,则索引项为144/8=18项,块内查找是(8+1)/2= 4.5,索引中用折半查找18项的ASL准确值是(1*1+2*2+4*3+8*4+3*5)/18 = 64/18约等于3.5 所以ASL约为3.5+4.5 = 8 追问: 答案不是那个啊 答案是14难道是答案错了 追答: 答案是14,那就是这个索引表中采用顺序查找而不是折半查找,则ASL=(b+1)/2+(s+1)/2=(8+1)/2+(18+1)/2=14 如果确实题目是如此:分块查找法,折半查找确定块,那就是答案弄错了
全部回答
  • 1楼网友:duile
  • 2021-01-31 21:28
回答的不错
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯