习题集解析部分
第6章 树和二叉树
——《数据结构题集》-严蔚敏.吴伟民版
源码使用说明 链接☛☛☛ 《数据结构-C语言版》(严蔚敏,吴伟民版)课本源码+习题集解析使用说明
课本源码合辑 链接☛☛☛ 《数据结构》课本源码合辑
习题集全解析 链接☛☛☛ 《数据结构题集》习题解析合辑
相关测试数据下载 链接☛ 数据包
本习题文档的存放目录:数据结构\▼配套习题解析\▼06 树和二叉树
文档中源码的存放目录:数据结构\▼配套习题解析\▼06 树和二叉树\▼习题测试文档-06
源码测试数据存放目录:数据结构\▼配套习题解析\▼06 树和二叉树\▼习题测试文档-06\Data
一、基础知识题
6.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>},请画出这棵树,并回答下列问题:
(1)哪个是根结点?
(2)哪些是叶子节点?
(3)哪个是结点G的双亲?
(4)哪些是结点G的祖先?
(5)哪些是结点G的孩子?
(6)哪些是结点E的子孙?
(7)哪些是结点E的兄弟?哪些是结点F的兄弟?
(8)结点B和N的层次号分别是什么?
(9)树的深度是多少?
(10)以结点C为根的子树的深度是多少?
6.2❶一棵度为2的树与一棵二叉树有何区别?
6.3❶试分别画出具有3个结点的树和3个结点的二叉树的所有不同形态。
6.4❸一棵深度为H的满k叉树有如下性质:第H层上的结点都是叶子结点,其余各层上每个结点都有k棵非空子树。如果按层次顺序从1开始对全部结点编号,问:
(1)各层的结点数目是多少?
(2)编号为p的结点的父结点(若存在)的编号是多少?
(3)编号为p的结点的第i个儿子结点(若存在)的编号是多少?
(4)编号为p的结点有右兄弟的条件是什么?其右兄弟的编号是多少?
6.5❷已知一棵深度为k的树中有n1个度为1的结点,n2个度为2的结点,…,nk个度为k的结点,问该树中有多少个叶子结点?
6.6❸已知在一棵含有n个结点的树中,只有度为k的分支结点和度为0的叶子结点。试求该树含有的叶子结点的书目。
6.7❸ 一棵含有n个结点的k叉树,可能达到的最大深度和最小深度各为多少?
6.8❹证明:一棵满k叉树上的叶子结点数n0和非叶子结点数n1之间满足以下关系:
n0=(k-1)n1+1。
6.9❷试分别推导含有n个结点和含n0个叶子结点的完全三叉树的深度H。
6.10❹对于那些所有非叶子结点均有非空左右子树的二叉树:
(1)试问:有n个叶子结点的树中共有多少个结点?
(2)试证明:,其中n为叶子结点的个数,li表示第i个叶子结点所在的层次(设根结点所在的层次为1)。
6.11❸在二叉树的顺序存储结构中,实际上隐含着双亲的信息,因此可和三叉链表对应。假设每个指针域占4个字节的存储,每个信息域占k个字节的存储。试问:对于一棵有n个结点的二叉树,且在顺序存储结构中最后一个结点的下标为m,在什么条件下顺序存储结构比三叉链表更节省空间?
6.12❷ 对题6.3所得各种形态的二叉树,分别写出前序、中序和后序遍历的序列。
6.13❷假设n和m为二叉树中两结点,用“1”、“0”或“Φ”(分别表示肯定、恰恰相反或者不一定)填写下标: