完全二叉树叶子节点的个数
2013-07-02 13:32
746 查看
题目:一个具有n个节点的完全二叉树,其叶子节点的个数为多少?
分析:
设叶子节点个数为n0,度为1的节点个数为n1,度为2的节点个数为n2
侧有
n0+n1+n2=n (1)
对于二叉树有:
n0=n2+1 (2)
由(1)(2) ==>
n0=(n+1-n1)/2 (3)
由完全二叉树的性质可知:n1=0 或 1
总结:
(a):当n1=0时(即度为1的节点为0个时,此时n为奇数)或者n为奇数时
n0= (n+1)/2;
(b):当n1=1时(即度为1的节点为1个时,此时n为偶数)或者n为偶数
n0= n/2;
综合(a)(b)可得:
(结论):一个具有n个节点的完全二叉树,其叶子节点的个数n0为: n/2 向上取整,或者(n+1)/2 向下取整
分析:
设叶子节点个数为n0,度为1的节点个数为n1,度为2的节点个数为n2
侧有
n0+n1+n2=n (1)
对于二叉树有:
n0=n2+1 (2)
由(1)(2) ==>
n0=(n+1-n1)/2 (3)
由完全二叉树的性质可知:n1=0 或 1
总结:
(a):当n1=0时(即度为1的节点为0个时,此时n为奇数)或者n为奇数时
n0= (n+1)/2;
(b):当n1=1时(即度为1的节点为1个时,此时n为偶数)或者n为偶数
n0= n/2;
综合(a)(b)可得:
(结论):一个具有n个节点的完全二叉树,其叶子节点的个数n0为: n/2 向上取整,或者(n+1)/2 向下取整
相关文章推荐
- 完全二叉树的叶子节点总数问题
- 面试题:完全二叉树699个节点,则叶子节点有多少个?
- 完全二叉树叶子节点的个数
- 完全二叉树根据节点个数求叶子个数
- 完全二叉树求叶子节点个数
- 二叉树的层次遍历,叶子节点的个数,是否为完全二叉树等等
- 完全二叉树叶子节点数n0和总结点数N的关系 (某公司校园招聘笔试试题)
- 800个节点的完全二叉树共有多少个叶子节点?相反,已知叶子节点,求最多有多少个节点!
- 完全二叉树,知道总节点数,计算叶子结点的数量
- 二叉树叶子节点的数目&二叉树第k层节点的数目&二叉树第k层叶子节点的数目
- easyui-tree根据叶子节点获取父节点值(N层)
- LeetCode OJ:Count Complete Tree Nodes(完全二叉树的节点数目)
- 完全二叉树,n到m的属于n的子树上的节点
- 查询所有叶子节点的Xpath表达式
- 题目:已知一个完全二叉树的结点数为770,问完全二叉树的叶子结点数为多少?
- 二叉树中根到叶子路径中节点和等于给定值的路径
- Flex中如何利用defaultLeafIcon样式去掉Tree叶子节点图标的例子
- 输出二叉树叶子节点、叶子节点数目、二叉树高度
- 《数据结构》完全二叉树的叶子数讨论
- 获取二叉树叶子节点个数的递归及非递归算法