设一棵完全二叉树共有839个结点,则在该二叉树中有多少个叶子结点 答案是420 求解释

 我来答
百度网友7a6a9e8
2012-08-03
知道答主
回答量:2
采纳率:0%
帮助的人:2.8万
展开全部
1、求深度。因为2的9次方=512,2的10次方=1024。显然有839个结点的完全二叉树的深度为10(说明总共有10层)
2、求最后一层的叶子结点。最后一层叶子节点数=总节点数839-第9层及之前的所有节点数511(计算出来的,即2的n次方-1,n为层数)=328
3、判断上一层是否有叶子结点。因为328/2=164<256(也就是第9层的结点数),所以第九层有叶子结点。第9层的叶子节点数=256-164=92
4、求总的叶子节点数。总叶子节点数=第9层叶子节点数+最后一层叶子节点数=92+328=420
(够详细了吧)
explorerman
2012-08-02 · TA获得超过513个赞
知道小有建树答主
回答量:340
采纳率:100%
帮助的人:249万
展开全部
设该树深度为n。根据完全二叉树性质 ,829对2取对数,值应该大于等于n-1而小于n,由此解得n。 然后前n-1层的节点都是满的,可算出最后一层的节点数k,然后(k+1)/2取整=r,就是第n-1层含有子节点的个数,那么用n-1层的节点数减去r得到该层的叶子节点数s。最后k+s即为所求

如哪一步不会求,可追问
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
leiyangbdwk
2012-08-03 · TA获得超过3295个赞
知道大有可为答主
回答量:4975
采纳率:12%
帮助的人:4391万
展开全部
可以根据公式进行推导,假设n0是度为0的结点总数(即叶子结点数),n1是度为1的结点总数,n2是度为2的结点总数,由二叉树的性质可知:n0=n2+1,则n= n0+n1+n2(其中n为完全二叉树的结点总数),由上述公式把n2消去得:n= 2n0+n1-1,由于完全二叉树中度为1的结点数只有两种可能0或1,由此得到n0=(n+1)/2或n0=n/2,就可根据完全二叉树的结点总数计算出叶子结点数。

参考资料: http://baike.baidu.com/view/427107.htm

本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式