欢迎来到天天文库
浏览记录
ID:40273034
大小:34.01 KB
页数:3页
时间:2019-07-30
《二叉树习题及答案》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、1.设一棵完全二叉树共有699个结点,则在该二叉树中的叶子结点数?1根据“二叉树的第i层至多有2^(i−1)个结点;深度为k的二叉树至多有2^k−1个结点(根结点的深度为1)”这个性质:因为2^9-1<699<2^10-1,所以这个完全二叉树的深度是10,前9层是一个满二叉树,这样的话,前九层的结点就有2^9-1=511个;而第九层的结点数是2^(9-1)=256所以第十层的叶子结点数是699-511=188个;现在来算第九层的叶子结点个数。由于第十层的叶子结点是从第九层延伸的,所以应该去掉第九层中还有子树的结点。因为第十层有188个,所以应该
2、去掉第九层中的188/2=94个;所以,第九层的叶子结点个数是256-94=162,加上第十层有188个,最后结果是350个2完全二叉树:若二叉树中最多只有最下面两层的结点的度可以小于2,并且最下面一层的结点(叶结点)都依次排列在该层最左边的位置上,这样的二叉树为完全二叉树。比如图:完全二叉树除叶结点层外的所有结点数(叶结点层以上所有结点数)为奇数,此题中,699是奇数,叶结点层以上的所有结点数为保证是奇数,则叶结点数必是偶数,这样我们可以立即选出答案为B!如果完全二叉树的叶结点都排满了,则是满二叉树,易得满二叉树的叶结点数是其以上所有层结点数
3、+1比如图:此题的其实是一棵满二叉树,我们根据以上性质,699+1=700,700/2=350,即叶结点数为350,叶结点层以上所有结点数为350-1=349。3完全二叉树中,只存在度为2的结点和度为0的结点,而二叉树的性质中有一条是:n0=n2+1;n0指度为0的结点,即叶子结点,n2指度为2的结点,所以2n2+1=699n2=349;n0=3502.在一棵二叉树上第5层的结点数最多是多少一棵二叉树,如果每个结点都是是满的,那么会满足2^(k-1)1。所以第5层至多有2^(5-1)=16个结点!3.在深度为5的满二叉树中,叶子结点的个数为答案
4、是16~叶子结点就是没有后件的结点~说白了~就是二叉树的最后一层~深度为K的二叉树~最多有2^k-1个结点~最多有2^(k-1)个结点~所以此题~最多有2^5-1=31个结点~最多有2^(5-1)=16个叶子结点~4.某二叉树中度为2的结点有18个,则该二叉树中有几个叶子结点?结点的度是指树中每个结点具有的子树个数或者说是后继结点数。题中的度为2是说具有的2个子树的结点;二叉树有个性质:二叉树上叶子结点数等于度为2的结点数加1。5.在深度为7的满二叉树中,度为2的结点个数为多少,就是第一层只有一个节点,他有两个子节点,第二层有两个节点,他们也都
5、有两个子节点以此类推,所以到第6层,就有2的5次方个节点,他们都有两个子节点最后第7层都没有子节点了。因为是深度为7的。所以就是1+2+4+8+16+32了2深度为1的时候有0个深度为2的时候有1个深度为3的时候有3个深度为4的时候有7个....深度为n的时候有(2的n-1次方减1)个6.一棵二叉树中共有70个叶子结点与80个度为1的结点,则该二叉树中的总结点数为?假设n表示二叉树的所有结点数,n0表示度为0的结点(叶子结点),n1表示度为1的结点,n2表示度为2的结点,由二叉树的性质有:n0=n2+1已知n0=70,则n2=n0-1=69而n
6、=n0+n1+n2=70+80+69=219总结点数n=70+80+70-1=2192解:对任一二叉树,如果其叶子结点为n0,度为1的结点数为n1,度为2的结点数为n2,则n0=n2+1;然后由n=n0+n1+n2①即可得出。(n为结点总数)证明上一结论:由二叉树的特点可知,除了根结点外,所有的结点都是由一个分支引出来的,因此分支数为A=n-1,而二叉树中的分支都是由度为1和度为2的结点发出的,因此有A=n1+2*n2,于是A=n-1=n1+2*n2,得到:n=n1+2*n2+1②由①与②可得:n0=n2+17.某二叉树有5个度为2的结点和3个
7、度为1的结点,则该二叉树共有几个结点???二叉树性质:终端结点(叶子节点)个数n0=度为2的节点(有2个孩子)个数n2+1即n0=n2+1。所以本题有:叶子节点个数=5+1=6,度为1的结点个数=3,度为2的结点个数=5,所以总个数=6+3+5=142对任何一棵二叉树T,如果其终端结点数为n0,度为2的结点数为n2,则n0=n2+1故叶子结点数(即度为0的结点)为5+1=6二叉树的结点数为n=n0+n1+n2所以该二叉树的结点为:5+3+6=14赞同
8、
此文档下载收益归作者所有