




免费预览已结束,剩余6页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第六章 树一名词解释:1 树 2。结点的度 3。叶子 4。分支点 5。树的度6父结点、子结点 7兄弟 8结点的层数 9树的高度 10 二叉树11 空二叉树 12 左孩子、右孩子 13孩子数 14 满二叉树 15完全二叉树16 先根遍历 17 中根遍历 18后根遍历 19二叉树的遍历 20 判定树21 哈夫曼树二、填空题1、 树(及一切树形结构)是一种“_分支层次_”结构。在树上,_根_结点没有直接前趋。对树上任一结点X来说,X是它的任一子树的根结点惟一的_前驱_。2、 一棵树上的任何结点(不包括根本身)称为根的_。若B是A的子孙,则称A是B的_3、 一般的,二叉树有_二叉树、_只根_的二叉树、只有_左子树_的二叉树、只有_右子树_的二叉树、同时有 左右_的二叉树五种基本形态。4、 二叉树第i(i=1)层上至多有_个结点。5、 深度为k(k=1)的二叉树至多有_个结点。6、 对任何二叉树,若度为2的节点数为n2,则叶子数_。7、 满二叉树上各层的节点数已达到了二叉树可以容纳的_最大值_。满二叉树也是_完全二叉树_二叉树,但反之不然。8、 具有n个结点的完全二叉树的深度为_。9、 如果将一棵有n个结点的完全二叉树按层编号,则对任一编号为i(1=in,则结点X无_左孩子_且无_右孩子_;否则,X的左孩子LCHILD(X)的编号为_2i_。(3) 若2i+1n,则结点X无_右孩子_;否则,X的右孩子RCHILD(X)的编号为_为2i+1_。10.二叉树通常有 顺序_存储结构和_链式_存储结构两类存储结构。11.每个二叉链表的访问只能从_根_结点的指针,该指针具有标识二叉链表的作用。12.对二叉链表的访问只能从_根_指针开始,若二叉树为空,则_root_=NULL.13.二叉链表中每个存储结点的每个指针域必须有一个值,这个值或者是_指向孩子的_的指针,或者是_空指针Null_。14.具有n个结点的二叉树中,一共有_2n_个指针域,其中只有_n-1_个用来指向结点的左右孩子,其余的_n+1_个指针域为NULL。15二叉树有不同的链式存储结构,其中最常用的是_二叉链表_与_三叉链表_。16可通过在非完全二叉树的“残缺”位置上增设“_虚结点_”将其转化为完全二叉树。*17以下程序段采用先根遍历方法求二叉树的叶子数,请在横线处填充适当的语句。Void countleaf(bitreptr t,int *count)/*根指针为t,假定叶子数count的初值为0*/ if(t!=NULL) if(t-lchild=NULL)&(t-rchild=NULL)_*count+_; countleaf(t-lchild,&count); _ countleaf(t-rchild,&count);_ 18一棵二叉树由根、左子树和右子树三部分组成,因此对二叉树的遍历也可相应地分解成_访问根结点_、_遍历左子树_、_遍历右子树_三项“子任务”。19若以D、L、R分别表示二叉树的三项子任务,限定“先左后右”,这样可能的次序有:_、_、_三种,按这三种次序进行的遍历分别称为_、_、_。20树的主要遍历方法有_先序遍历_、_中序遍历_、_后序遍历_等三种。*21判定树的每个_非终端节点_包含一个条件,对应于一次比较或判断,每个_终端节点_对应一种分类结果。22设定T是一判定树,其终端结点为n1,,nk。每个终端结点ni对应的百分为pi(通常将pi称为n1的权)。再假定ni的祖先数为li,这样,按T进行分类的平均比较次数为_。23根据文字说明,请在以下横线处填充适当的语句。采用静态链表作存储结构,设置一个大小为2n-1的数组,令数组每个元素由四个域组成:wt是结点的权值;lchild、rchild分别为结点的左、右孩子指针;parent是结点的双亲在数组中的下标。其数组元素类型定义如下:typedef struct float wt /*权值*/int parent,lchild rchild; /*指针域*/ node; typedef node hftree2*n-1;在这种存储结构上的哈夫曼算法可描述如下:void Huffman(int k,float Wk,hftree T) /*求给定权值W的哈夫曼树T*/int i,j,x,y;float m,n;for(i=0;i2*k-1;i+) Ti.parent=-1;Ti.lchild=-1;Ti.rchild=-1; if(_)Ti.wt=Wi; else Ti.wt=0for(i=0;ik-1;i+) x=0;y=0;m=maxint;n=maxint; for(j=0;jk=i;j+) if(Tj.wtm)&(Tj.parent=-1)n=m;y=_;m=_;x=j; else if(Tj.wtn)&(Tj.parint=-1)n=Tj.wt;y=j; Tx.parent=_;Ty.parent=_; Tk+i.wt=_; Tk+i.lchild=_;Tk+i.rchild=_;24若二叉树的一个叶子是某子树的中根遍历序列中的第一个结点,则它必是该子树的后根遍历序列中的_第一_个结点。25在_先序_遍历二叉树的序列中,任何结点的子树上的所有结点,都是直接跟在该结点之后。*26具有n个结点的完全二叉树,若按层次从上到下、从左到右对其编,号(根结点为1号),则编号最大的分支结点序号是_n/2取整_,编号最小的分支结点序号是_1_,编号最大的叶子结点序号是_n_,编号最小的叶子结点序号是_n/2取整+1_。*27二叉树的先根遍历序列中,除根结点外,任一结点均处在其双亲结点的_后面_。*28先根遍历树和先根遍历与该树对应的二叉树,其结果_相同_。*29树与二叉树之间最主要的差别是:二叉树中各结点的子树要区分为_左子树_和右子树_,即使在结点只有一棵子树的情况下,也要明确指出该子树是_左子树_还是_右子树_。*30由_树_转换成二叉树时,其根结点的右子树总是空的。*31哈夫曼树是带权路径度_最小_的树,通常权值较大的结点离根_近_。*32有m个叶子结点的哈夫曼树,其结点总数为_2m-1_。33一棵树的形状如图填空题33所示,它的根结点是_A_,叶子结点是_e,j,k.g.l,o,p,q,r,n,i_,结点H的度是_3_,这棵树的度是_4_,这棵树的深度是_5_,结点F的儿子结点是_j,k_,结点G的父结点是_c_。*34树的结点数目至少为_1_,二叉树的结点数目至少为_0_。35_树_中结点的最大度数允许大于2,而_二叉树_中结点的最大度数不允许大于2。*36结点最少的树为_只有一个结点的树_,结点最少的二叉树为_空二叉树_。37若一棵二叉树的叶子数为n,则该二叉树中,左、右子树皆非空的结点个数为_n-1_。*38任意一棵具有n个结点的二叉树,若它有m个叶子,则该二叉树上度数为1的结点为_n+1-2m_个。*39现有按中序遍历二叉树的结果为ABC,问有_5_种不同形态的二叉树可以得到这一遍历结果,这些二叉树分别是_。*40以数据集4,5,6,7,10,12,18为叶结点权值所构造的哈无曼树为_,其带权路径长度为_165_。41有m个叶子结点的哈夫曼树上的结点数是_2m-1_。42已知一棵度为3的树有2个度为1的结点,3个度过为2的结点,4个度为3的结点,则该树中有_12_个叶子结点。43设树T的度为4,其中度为1、2、3和4的结点个数分别是4、2、1和1,则T中叶子结点的个数是_。三、单向选择题1 以下说法错误的是 ( 1 )树形结构的特点是一个结点可以有多个直接前趋线性结构中的一个结点至多只有一个直接后继树形结构可以表达(组织)更复杂的数据树(及一切树形结构)是一种分支层次结构任何只含一个结点的集合是一棵树2,以下说法错误的是 ( 3 ) 二叉树可以是空集*二叉树的任一结点都有两棵子树二叉树与树具有相同的树形结构二叉树中任一结点的两棵子树有次序之分3、以下说法错误的是 ( 4 )完全二叉树上结点之间的父子关系可由它们编号之间的关系来表达在三叉链表上,二叉树的求双亲运算很容易实现在二叉链表上,求根,求左、右孩子等很容易实现在二叉链表上,求双亲运算的时间性能很好&4、以下说法错误的是 ( 4 ) *一般在哈夫曼树中,权值越大的叶子离根结点越近哈夫曼树中没有度数为1的分支结点若初始森林中共有n裸二叉树,最终求得的哈夫曼树共有2n-1个结点若初始森林中共有n裸二叉树,进行2n-1次合并后才能剩下一棵最终的哈夫曼树5深度为6的二叉树最多有( )个结点 ( 2 )64 63 32 316将含有83个结点的完全二叉树从根结点开始编号,根为1号,后面按从上到下、从左到右的顺序对结点编号,那么编号为41的双结点编号为 ( 4 )42 40 21 20*7任何一棵二叉树的叶结点在其先根、中根、后跟遍历序列中的相对位置 ( 3 ) 肯定发生变化 有时发生变化肯定不发生变化 无法确定*8设二叉树有n个结点,则其深度为 ( 不是完全 4 )n-1 n 5floor(log2n) 无法确定9设深度为k的二叉树上只有度为0和度为2的节点,则这类二叉树上所含结点总数最少( 3 )个k+1 2k 2k-1 2k+1*10.下列说法正确的是 ( 1 )树的先根遍历序列与其对应的二叉树的先根遍历序列相同树的先根遍历序列与其对应的二叉树的后根遍历序列相同树的后根遍历序列与其对应的二叉树的先根遍历序列相同树的后根遍历序列与其对应的二叉树的后根遍历序列相同11下列说法中正确的是 ( 4 )任何一棵二叉树中至少有一个结点的度为2任何一棵二叉树中每个结点的度都为2 二叉树可空任何一棵二叉树中的度肯定等于2任何一棵二叉树中的度可以小于212一棵二叉树满足下列条件:对任意结点,若存在左、右子树,则其值都小于它的左子树上所有结点的值,而大于右子树上所有结点的值。现采用(2 )遍历方式就可以得到这棵二叉树所有结点的递增序列。先根 中根 后根 层次*13设森林T中有4棵树,第一、二、三、四棵树的结点个数分别是n1,n2,n3,n4,那么当把森林T转换成一棵二叉树后,且根结点的右子树上有(4 )个结点。n1-1 n1 n1+n2+n3 n2+n3+n4 *14森林T中有4棵树,第一、二、三、四棵树的结点个数分别是n1,n2,n3,n4,那么当把森林T转换成一棵二叉树后,且根结点的左孩子上有(1 )个结点。n1-1 n1 n1+n2+n3 n2+n3+n415.对含有( 2 )个结点的非空二叉树,采用任何一种遍历方式,其结点访问序列均相同。0 1 2 不存在这样的二叉树*16讨论树、森林和二叉树的关系,目的是为了(1 )借助二叉树上的运算方法去实现对树的一些运算2.对二叉树进行存储将树、森林转换成二叉树体现一种技巧,没有什么实际意义 17如图选择题17所示二叉树的中序遍历序列是( )abcdgef dfebagc dbaefcg defbagc18.已知某二叉树的后续遍历序列是dabec,中序遍历序列是deabc,它的前序遍历序列是( 4 )acbed deabc decab cedba*19.如果T2是由有序树T转化而来的二叉树,那么T中结点的前序就是T2中结点的( 1 )前序 中序 后序 层次序20如果T2是由有序树T转化而来的二叉树,那么T中结点的后序就是T2中结点的( 2 )前序 中序 后序 层次序21某二叉树的前序遍历结点访问顺序是abdgcefh,中序遍历的结点访问顺序是dgbaechf,则其后序遍历的结点访问顺序是 ( 4 )bdgcefha gdbecfha bdgechfa gdbehfca22.在图选择题22中的二叉树中,( 3 )不是完全二叉树。 23、二叉树的前序遍历序列中,任意一个结点均处在其子女结点的前面,这种说法 ( 1 )正确 错误24、由于二叉树中每个结点的度最大为2,所以二叉树是一种特殊的树,这种说法 ( 2 )五确 错误25,二叉树是每个结点的度不超过2的有序树的特殊情况,这种说法 ( 2 )正确 错误26树最适合用来表示 ( 3)有序数据元素 无序数据元素元素之间具有分支层次关系的数据 元素之间无联系的数据27,深度为5的二叉树至多有( 3 )个结点。16 32 31 1028、在计算递归函数时,如不使用递归过程,则一般情况下必须借助于(1 )数据结构栈 树 双向队列 顺序表29.堆(Heap)是 ( 2 )完全二叉树 线性表 满二叉树30、下列说法中正确的是 ( 4 )二叉树中任何一个结点的度都为2 二叉树的度为2任何一棵二叉树中至少有一个结点的度为2 一棵二叉树的度可以小于231、设二叉树根结点的层次为0,一棵高度为h的满二叉树中的结点个数是(4 )2h 2h-1 2h-1 2h+1-132、设二叉树结点的先根序列、中根序列和后根序列中,所有叶子结点的先后顺序(2 )都不相同 完全相同 先序和中序相同,而与后序不同 中序和后序相同,而与先序不同33以下说法错误的是 ( 2 )存在这样的二叉树,对它采用任何次序的遍历,其结点访问序列均相同二叉树是树的特殊情形由树转换成二叉树,其根结点的右子树总是空的在二叉树只有一棵子树的情况下也要明确指出该子树是左子树还是右子树34、以下说法正确的是 ( 3 )先根遍历树和前序遍历与该树对应的二叉树,其结果不同后根遍历树和前序遍历与该树对应的二叉树,其结果不同前序遍历森林和前序遍历与该森林对应的二叉树,其结果相同后序遍历森林和中序遍历与该森林对应的二叉树,其结果不同35以下说法正确的是 ( 1 )一般来说,若深度为k的n个结点的二叉树具有最小路径长度,那么从根结点到第k-1层具有最多的结点数为2k-1-1余下的n-2k-1+1个结点在第k层的任一位置上若有一个结点是某二叉树子树的前序遍历序列中的最后一个结点,则它必是该子树的前序遍历序列中的最后一个结点。若一个结点是某二叉树子树的前序遍历序列中的最后一个结点,则它必是该子树的中序遍历序列中的最后一个结点。在二叉树中插人结点,该二叉树便不再是二叉树36、以下说法正确的是 ( )若一个树叶是某二叉树子树的前序遍历序列中的最后一个结点,则它必是该子树的前序遍历序列中的最后一个结点。若一个树叶是某二叉树子树的前序遍历序列中的最后一个结点,则它必是该子树的中序离历序列中的最后一个结点二叉树中,具有两个子女的父结点,在中序遍历序列中,它的后继结点最多只能有一个子女结点。在二叉树中,具有一个子女结点,在中序遍历序列中,它没有后继子女结点。37、以下说法错误的是 ( 3 )哈夫曼树是带权路径长度最短的树,路径上权值较大的结点离根较近。若一个二叉树的树叶是某子树的中序遍历序列中的第一个结点,则它必是该子树的后序遍历序列中的第一个结点。已知二叉树的前序遍历和后序遍历序列并不能惟一地确定这棵树,因为不知道树的根结点是哪一个。在前序遍历二叉树的序列中,任何结点的子树的所有结点都是直接跟在该结点的之后。四、简答及应用题1简述二叉链表的类型定义。2简述三叉链表的类型定义。3简述孩子链表表示法的类型定义。4分别就图简答题4.1中的二叉树和树回答下列问题(1)哪个是根结点?(2)哪些是叶结点?(3)哪个是G的双亲?(4)哪些是G的祖先?(5)哪些是G的孩子?(6)哪些是E的子孙?(7)哪些是E的兄弟? 哪些是C的兄弟?(8)结点B和I的层数分别是多少?(9)树的深度是多少?(10)以结点G为根的子树的深度是多少?(11)树的度数是多少? 5为什么图简答题5所示的结构都不是树形结构?详细说明理由。6分别画出含3个结点的树与二叉树的所有不同形态。7分别画出图简答题7-1所示二叉树的二叉链表、三叉链表和顺序存储结构。8分别写出图简答题4.1(a)所示二叉树的先根、中根和后根序列。9.试找出分别满足下列条件的所有二叉树:(1) 先根序列和中根序列相同; (2)中根序列和后根序列相同;( 3 )先根序列和后根序列相同。10已知一棵二叉树的中根序列和后根序列分别为BDCEAFHG和EDCBHGEA,试画出这棵二叉树。11试分别画出图简答题11-1所示树的孩子链表、孩子兄弟链表和静态双亲链表。12分别给出简答题11.1图中树的先根、后根和层次遍历的结点访问序列。13将图简答题13-1所示的林转换成二叉树。14分别画出图简答题14-1所示各二叉树对应的林。15给定权值7,18,3,32,5,26,12,8,构造相应的哈夫曼树。16试以三种遍历为基础,分别写出在二叉树上查找直接前趋或直接后继的关键操作步骤。17已知一棵二叉树的前根序列和中根序列分别为ABDGHECFIJ及GDHBEACIJF,请画出这棵二叉树。18设某密码电文由8个字母组成,每个字母在电文中的出现频率分别是7,19,2,6,32,3,21,10,试为这8个字母设计相应的哈夫曼编码。19有一二叉树如图19-1所示,试画出它的顺序存储结构示意图。20将图简答20-1所示森林转换为二叉树。五,算法设计1、以二叉链表为存储结构,分别实现二叉树的下列运算:(1)PARENT (BT,X);(2)CREATE ( X, LBT.RBT);(3)DELLEFT(BT,X
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 美容机构营销活动方案策划
- 吉林建筑动画方案设计公司
- 吐鲁番工程顶管施工方案
- 营销推广咨询报价方案
- 改造小型超市建筑方案设计
- 移动服务站营销模式方案
- 编写施工方案思路怎么写
- 抖音营销方案是什么
- 商业街年度营销活动方案
- 常州整合营销报价方案
- 《春江花月夜》省公开课金奖全国赛课一等奖微课获奖课件
- 人音版小学六年级上册音乐教案(本)
- 19S406建筑排水管道安装-塑料管道
- 《福建省泰宁县》参考课件
- DIP 焊锡外观教材
- 中国儿童青少年身体活动指南
- 加油站人员培训和安全意识教育
- 全国职业大赛(中职)ZZ006水利工程制图与应用赛项赛题库共计10套
- 变压器租赁协议书x
- 高压电气设备试验的基本知识
- 整理我的小书桌(课件)小学劳动二年级通用版
评论
0/150
提交评论