Free考研资料 - 免费考研论坛

 找回密码
 注册
打印 上一主题 下一主题

请教一道ds题: 求12个结点顺序表折半搜索的ASL

[复制链接]
跳转到指定楼层
楼主
beyondyuefei 发表于 07-9-14 18:45:31 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我原来是直接带公式O(log2^n) ,那么结果就是O(log2^12),结果答案确是 37/12.
我又看了书上这部分内容,后来我用 ASL=1/n(1x1+2x2+...)这个公式算出来了,确实为37/12. 是不是先算高度h,然后就用这个公式算,如果不是满2叉树,则最后一层结点数另算.是这样做的么? 我原来的做法错误是否因为O(log2^n)这个只是它的大O表示法而已?
沙发
alpha2008 发表于 07-9-14 22:19:50 | 只看该作者

alpha2008

构造12节点的二叉判定树,第一层是1个节点,第二层是2个节点,第三层是4个节点,第四层是5个节点,因此查找成功时的平均查找长度ASL是(1*1+2*2+3*4+4*5)/12=37/12,即每层的节点个数乘以该层的所在的层数,再除以总的节点数目,而O(log2^n) 只是用来估算的,用于定性的分析.
板凳
 楼主| beyondyuefei 发表于 07-9-14 22:24:59 | 只看该作者

回复 #2 alpha2008 的帖子

谢谢,证实了我的想法
地板
pltl1985 发表于 07-9-15 21:04:12 | 只看该作者
============================================
查找成功时的平均查找长度ASL即每层的节点个数乘以该层的所在的层数,
再除以总的节点数目,用于定量分析;
而O(log2^n) 只是用来估算的,用于定性的分析.
============================================
5#
fcy19831021 发表于 07-9-16 13:09:39 | 只看该作者
楼上的回答很正确,支持!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

联系我们|Free考研资料 ( 苏ICP备05011575号 )

GMT+8, 25-1-11 08:47 , Processed in 0.085454 second(s), 12 queries , Gzip On, Xcache On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表