【数据结构与算法】树和二叉树课后习题

文章详细介绍了树的结构,包括根结点、叶子结点、双亲结点、祖先结点、孩子结点等概念,并给出了具体示例进行解释。此外,还讨论了度为2的树与二叉树的区别,以及在不同类型的树中如何计算叶子结点的数量。最后,探讨了满k叉树中叶子结点与非叶子结点的关系。
摘要由CSDN通过智能技术生成

题目

题目1

知一棵树边的集合为
< I , M > , < I , N > , < E , I > , < B , E > , < B , D > , < A , B > , < G , J > , < G , K > , < C , G > , < C , F > , < H , L > , < C , H > , < A , C > {<I,M>,<I,N>,<E,I>,<B,E>,<B,D>,<A,B>,<G,J>, <G,K>,<C,G>,<C,F>,<H,L>,<C,H>,<A,C>} <I,M>,<I,N>,<E,I>,<B,E>,<B,D>,<A,B>,<G,J>,<G,K>,<C,G>,<C,F>,<H,L>,<C,H>,<A,C>
请画出这棵树并回答下列问题:

  1. 哪个是根结点?
  2. 哪些是叶子结点?
  3. 哪个是结点G的双亲?
  4. 哪些是结点G的祖先?
  5. 哪些是结点G的孩子?
  6. 哪些是结点E的子孙?
  7. 哪些是结点E的兄弟?哪些是结点F的兄弟?
  8. 结点B和N的层次号分别是什么?
  9. 树的深度是多少?
  10. 以结点C为根的子树的深度是多少?

该树形状

在这里插入图片描述

题目1答案

(1) 根结点:A
(2) 叶子节点:M、N、J、K
(3) 结点G的双亲:C
(4) 结点G的祖先:A、C
(5) 节点G的孩子:J、K
(6) 节点E的子孙:I、M、N
(7) 节点E的兄弟:D;节点F的兄弟:H、G
(8) 结点B和N的层次号分别是:2、5
(9) 树的深度:5
(10) 以结点C为根的子树的深度:2


题目2

一棵度为2的树与一棵二叉树有何区别?


题目2答案

  • 结构方面:一棵度为2的树的结点之间没有严格的父子关系,但二叉树中每个结点都有明确的父结点和左右结点。
  • 遍历方式:二叉树常用前序、中序、后序遍历,而度为2的树可以用更特殊的遍历方式来遍历,如:从根结点开始,先遍历左子结点、再遍历右子结点、最后递归遍历子树。

题目3

已知一棵度为k的树中有n1个度为1的结点,n2个度为2的结点,…,nk个度为k的结点,问该树中有多少个叶子结点?


题目3答案

度之和: n − 1 ① 度之和:n-1 ① 度之和:n1①
度之和: n 1 + n 2 ∗ 2 + n 3 ∗ 3.. + n m ∗ m ② 度之和:n1+n2*2+n3*3 ..+ nm*m ② 度之和:n1+n22+n33..+nmm
联立解得: n 0 = n 2 + . . . + ( k − 1 ) ∗ n k + 1 联立解得:n0=n2+...+(k-1)*nk+1 联立解得:n0=n2+...+(k1)nk+1


题目4

已知一棵含有n个结点的树中,只有度为k的分支结点和度为0的叶子结点,求该树含有的叶子结点的数目


题目4答案

设叶子结点为 x 个,度为 k 的分支结点为 n − x 个 设叶子结点为x个,度为k的分支结点为n-x个 设叶子结点为x个,度为k的分支结点为nx
在这里插入图片描述
故一共有 1 + ( n − k ) ∗ k 1+(n-k)*k 1+(nk)k个结点(其中1为最顶上的结点也就是根结点)
解: x = n − ( n − 1 ) / k 解: x= n-(n-1)/k 解:x=n(n1)/k


题目5

证明:一棵满k叉树上的叶子结点数n0和非叶子结点数n1之间满足下列关系: n 0 = ( k − 1 ) n 1 + 1 n_0=(k-1)n_1+1 n0=k1n1+1


题目5答案

由于是满k叉树,故只有叶子结点和度为k的非叶子结点,假设一共有n + 1层
n 1 = ( 1 − k n ) / ( 1 − k ) n_1=(1-k^n)/(1-k) n1=(1kn)/(1k)
n 0 = k n n_0=k^n n0=kn
故得证
n 0 = ( k − 1 ) n 1 + 1 n_0=(k-1)n1+1 n0=k1n1+1


结束语

  因为是算法小菜,所以提供的方法和思路可能不是很好,请多多包涵~如果有疑问欢迎大家留言讨论,你如果觉得这篇文章对你有帮助可以给我一个免费的赞吗?我们之间的交流是我最大的动力!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

hiddenSharp429

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值