习题6树和二叉树.docx
树和二叉树自测题
第6章树和二叉树自测题一、填空题1.树是一种________结构;在树结构中,________结点没有直接前趋;层次,根2.一棵树上的任何结点不包括根本身称为根的________;若B是A的子孙,则称A是B的________;子孙结点,祖先3.二叉树有______二叉树、______的二叉树、只有______的二叉树、只有______的二叉树、同时有______的二叉树五种基本形态;空、只有根结点、根和根的左子树、根和根的右子树、根和根的左右子树4.树在计算机内的表示方式有_______、_______、_________;双亲表示法、孩子表示法、双亲孩子表示法5.对任何二叉树,若度为2的节点数为n2,则叶子数n0=______;n0=n2+16. 高度为kk>=1的二叉树至多有______个结点;2k-17. 二叉树第ii>=1层上至多有______个结点;2i-18. 满二叉树上各层的结点数已达到了二叉树可以容纳的______;满二叉树也是______二叉树,但反之不然;最大值,完全二叉树9.具有n个结点的完全二叉树的高度为______;log2n10. 如果将一棵有n个结点的完全二叉树按层编号,则对任一编号为i1<=i<=n的结点X有:1若i=1,则结点X是______;若i〉1,则X的双亲PARENTX的编号为______;根结点,i/22 若2i>n,则结点X无______且无______;否则,X的左孩子LCHILDX的编号为______;左孩子,右孩子,2i3若2i+1>n,则结点X无______;否则,X的右孩子RCHILDX的编号为______;右孩子,2i+1 11. 二叉树通常有______存储结构和______存储结构两类存储结构;顺序,链接12.具有n个结点的二叉链表中,一共有________个指针域,其中只有________个用来指向结点的左右孩子,其余的________个指针域为NULL;2n,n-1,n+113. 一棵二叉树由根、左子树和右子树三部分组成,因此对二叉树的遍历也可相应地分解成________、________、________三项“子任务”;访问根结点、遍历左子树、遍历右子树14. 若以N、L、R分别表示二叉树的三项子任务,限定“先左后右”,这样可能的次序有:________、________、________三种,按这三种次序进行的遍历分别称为________、________、________;NLR、LNR、LRN、先根或前序遍历、中根或中序遍历、后根或后序遍历15. 在二叉链表中,指针p所指结点为叶结点的条件是______;结点的左右孩子域均为空指针16. 已知一棵度为3的树有2个度为1的结点,3个度为2的结点,4个度为3的结点,则该树有______个叶结点;1217.设根结点的层数为1,具有n个结点的二叉树的最大高度是______;n18. 已知二叉树前序序列为ABDEGCF,中序序列为DBGEACF,则后序序列是____;DGEBFCA19. 若一个二叉树的叶结点是某子树的中序遍历序列中的最后一个结点,则它必是该子树的______序列中的最后一个结点;先前序20. 先根次序遍历树森林等同于按______遍历对应的二叉树;后根次序遍历树森林等同于______遍历对应的二叉树;先,中二、单项选择题1.以下说法错误的是 AA. 树型结构的特点是一个结点可以有多个直接前趋B. 线性结构中的一个结点至多只有一个直接后继C. 树型结构可以表达组织更复杂的数据D.树型结构是一种层次结构2.以下说法错误的是 BA.二叉树可以是空集B.二叉树的任一结点都有两棵子树C.二叉树的任一结点最多有两棵子树D.二叉树中任一结点的两棵子树有次序之分3.以下说法错误的是DA.完全二叉树上结点之间的父子关系可由它们编号之间的关系来表达B. 在三叉链表上,二叉树的求结点双亲运算很容易实现C. 在二叉链表上,求结点的左、右孩子等很容易实现D. 在二叉链表上,求结点的双亲运算很容易实现4.高度为6的二叉树最多有 B个结点A.64 B. 63 C. 32 D. 315. 将含有83个结点的完全二叉树从根结点开始编号,根为1号,后面按从上到下、从左到右的顺序对结点编号,那么编号为41的双亲结点编号为 DA. 42B. 40C. 21D. 206. 任何一棵二叉树的叶结点在其先根、中根、后根遍历序列中的相对位置 CA.一定不相同 B. 有时不相同 C. 一定相同 D. 无法确定7. 下列说法正确的是 AA.树的先根遍历序列与其对应的二叉树的先根遍历序列相同B.树的先根遍历序列与其对应的二叉树的后根遍历序列相同C.树的后根遍历序列与其对应的二叉树的先根遍历序列相同D.树的后根遍历序列与其对应的二叉树的后根遍历序列相同8.一棵二叉树满足下列条件:对任意结点,若存在左、右子树,则其值都小于它的左子树上所有结点的值,而大于右子树上所有结点的值;现采用 B 遍历方式就可以得到这棵二叉树所有结点的递增序列;A.先根 B. 中根 C. 后根 D. 层次9.设森林T中有4棵树,第一、二、三、四棵树的结点个数分别是n1,n2,n3,n4,那么当把森林T转换成一棵二叉树后,且根结点的右子树上有 D个结点;A.n1-1 B. n1 C. n1+n2+n3 D. n2+n3+n410. 已知某二叉树的后序遍历序列是dabec,中序遍历序列是deabc,则它的前序遍历序列是DA. acbedB. deabcC. decabD. cedba。
数据结构习题第6章
第6章树和二叉树一、选择题1.不含任何结点的空树()。
A. 是一棵树B. 是一棵二叉树C. 是一棵树也是一棵二叉树;D. 既不是树也不是二叉树2. 一棵有n个结点的树的所有结点的度数之和为()。
A. n-1B. nC. n+1D. 2n3. 在二叉树中某一个结点的深度为3,高度为4,则该树的高度是()。
A. 5B. 6C. 7D. 84. 设高度为h的二叉树中只有度为0和度为2的结点,则该树的结点数至多为()。
A. 2h-1B. 2h+1C. 2h-1D. 2h+15. 设高度为h的二叉树中只有度为0和度为2的结点,则该树的结点数至少为()。
A. 2h-1B. 2h+1C. 2h-1D. 2h+16. 高度为h的满二叉树中有n个结点,其中有m个叶结点,则正确的等式是()。
A. h+m=nB. h+m=2nC. m=h-1D. n=2h-17.二叉树是非线性数据结构,所以()。
A. 它不能用顺序存储结构存储B. 它不能用链式存储结构存储C. 顺序存储结构和链式存储结构都能存储D. 顺序存储结构和链式存储结构都不能使用8. 一棵完全二叉树有25个叶结点,则该树最少有()个结点。
A. 48B. 49C. 50D. 519. 假设一个三叉树的结点数为36,则该树的最小高度为()。
A. 2B. 3C. 4D. 510. 设二叉树有n个结点,则二叉链表中非空指针数为()。
A. n-1B. nC. n+1D. 2n11. 先序序列和中序序列正好相反的二叉树是()。
A. 完全二叉树B. 满二叉树C. 左单枝树D. 右单枝树12. 后序序列和中序序列正好相反的二叉树是()。
A. 完全二叉树B. 满二叉树C. 左单枝树D. 右单枝树13.把一棵树转换为二叉树后,这棵二叉树的形态是()。
A. 唯一的B. 有多种C. 有多种,但根结点都没有左孩子D. 有多种,但根结点都没有右孩子14. 将一棵树T转换为孩子—兄弟链表表示的二叉树H,则T的后根序遍历是H 的()。
第6章树和二叉树习题
第六章 树和二叉树一、选择题1.算术表达式a+b*(c+d/e )转为后缀表达式后为( B )A .ab+cde/*B .abcde/+*+C .abcde/*++ 2. 设有一表示算术表达式的二叉树(见下图),它所表示的算术表达式是( C )A. A*B+C/(D*E)+(F-G)B. (A*B+C)/(D*E)+(F-G)C. (A*B+C)/(D*E+(F-G ))D. A*B+C/D*E+F-G3. 设树T 的度为4,其中度为1,2,3和4的结点个数别离为4,2,1,1 则T 中的叶子数为( D )A .5B .6C .7D .84. 在下述结论中,正确的是( D )①只有一个结点的二叉树的度为0; ②二叉树的度为2; ③二叉树的左右子树可任意互换;④深度为K 的完全二叉树的结点个数小于或等于深度相同的满二叉树。
A .①②③B .②③④C .②④D .①④5. 设丛林F 对应的二叉树为B ,它有m 个结点,B 的根为p,p 的右子树结点个数为n,丛林F 中第一棵树的结点个数是( A )A .m-nB .m-n-1C .n+1D .条件不足,无法确信6.若一棵二叉树具有10个度为2的结点,5个度为1的结点,则度为0的结点个数是( B )A .9B .11C .15D .不确信7.设丛林F 中有三棵树,第一,第二,第三棵树的结点个数别离为M1,M2和M3。
与丛林F 对应的二叉树根结点的右子树上的结点个数是( D )。
A .M1B .M1+M2C .M3D .M2+M38.一棵完全二叉树上有1001个结点,其中叶子结点的个数是( E )A.250 B.500 C.254 D.505 E.以上答案都不对9. 有关二叉树下列说法正确的是( B )A.二叉树的度为2 B.一棵二叉树的度能够小于2C.二叉树中至少有一个结点的度为2 D.二叉树中任何一个结点的度都为210.二叉树的第I层上最多含有结点数为(C )A.2I B.2I-1-1 C.2I-1D.2I -111. 一个具有1025个结点的二叉树的高h为( C )A.11 B.10 C.11至1025之间D.10至1024之间12.一棵二叉树高度为h,所有结点的度或为0,或为2,则这棵二叉树最少有( B )结点A.2h B.2h-1 C.2h+1 D.h+113. 一棵树高为K的完全二叉树至少有( C )个结点A.2k–1 B. 2k-1–1 C. 2k-1 D. 2k14.对二叉树的结点从1开始进行持续编号,要求每一个结点的编号大于其左、右小孩的编号,同一结点的左右小孩中,其左小孩的编号小于其右小孩的编号,可采纳( C )顺序的遍历实现编号。
第6章 树和二叉树答案
第6章树和二叉树部分答案解释如下。
12. 由二叉树结点的公式:n=n0+n1+n2=n0+n1+(n0-1)=2n0+n1-1,因为n=1001,所以1002=2n0+n1,在完全二叉树树中,n1只能取0或1,在本题中只能取0,故n=501,因此选E。
42.前序序列是“根左右”,后序序列是“左右根”,若要这两个序列相反,只有单支树,所以本题的A和B均对,单支树的特点是只有一个叶子结点,故C是最合适的,选C。
A或B 都不全。
由本题可解答44题。
47. 左子树为空的二叉树的根结点的左线索为空(无前驱),先序序列的最后结点的右线索为空(无后继),共2个空链域。
52.线索二叉树是利用二叉树的空链域加上线索,n个结点的二叉树有n+1个空链域。
部分答案解释如下。
6.只有在确定何序(前序、中序、后序或层次)遍历后,遍历结果才唯一。
19.任何结点至多只有左子树的二叉树的遍历就不需要栈。
24. 只对完全二叉树适用,编号为i的结点的左儿子的编号为2i(2i<=n),右儿子是2i+1(2i+1<=n)37. 其中序前驱是其左子树上按中序遍历的最右边的结点(叶子或无右子女),该结点无右孩子。
38 . 新插入的结点都是叶子结点。
42. 在二叉树上,对有左右子女的结点,其中序前驱是其左子树上按中序遍历的最右边的结点(该结点的后继指针指向祖先),中序后继是其右子树上按中序遍历的最左边的结点(该结点的前驱指针指向祖先)。
44.非空二叉树中序遍历第一个结点无前驱,最后一个结点无后继,这两个结点的前驱线索和后继线索为空指针。
三.填空题1.(1)根结点(2)左子树(3)右子树2.(1)双亲链表表示法(2)孩子链表表示法(3)孩子兄弟表示法3.p->lchild==null && p->rchlid==null 4.(1) ++a*b3*4-cd (2)18 5.平衡因子6. 97. 128.(1)2k-1 (2)2k-19.(1)2H-1 (2)2H-1(3)H=⎣log2N⎦+110. 用顺序存储二叉树时,要按完全二叉树的形式存储,非完全二叉树存储时,要加“虚结点”。
树和二叉树(习题及作业)
• 3下列各项叙述中,正确的是 。 • A) 二叉树中每个结点有两个子结点,而对 一般的树则无此限制 • B) 用树的前序遍历和中序遍历可以推导出 树的后续遍历 • C) 在二叉树中插入结点,该二叉树便不再 是二叉树 • D) 用一维数组存储二叉树,总是以前序遍 历顺序存储结点
• • • • •
第6章 树和二叉树
• 1.如果二叉树中任何一个结点的值都小于它 的左子树上所有结点的值,且大于右子树 上所有结点的值,要得到个结点值的递增 序列,应按下列 次序排列结点。 • A) 先根 • B) 中根 • C) 后根 • D) 层次
• 2.设森林F中有3棵树。第一、第二和第三棵 树的结点个数分别是m1,m2和m3,则与森 林F对应的二叉树根结点的右子树上的结点 个数是 。 • A) m3 • B) m2 + m3 • C) m1 •B) 孩子链表表示法 C) 孩子兄弟表示法 D) 顺序存储表示法
不是树的存储形式。
• 假设用于通信的电文由字符集{a,b,c,d,e,f,g} 中的字母构成。它们在电文中出现的频度 分别为{0.31,0.16,0.10,0.08,0.11,,0.20,0.04}, • 为这7个字母设计哈夫曼编码; • 计算其带权路径长度
数据结构课后习题(第6章)
【课后习题】第6章树和二叉树网络工程2010级()班学号:姓名:一、填空题(每空1分,共16分)1.从逻辑结构看,树是典型的。
2.设一棵完全二叉树具有999个结点,则此完全二叉树有个叶子结点,有个度为2的结点,有个度为1的结点。
3.由n个权值构成的哈夫曼树共有个结点。
4.在线索化二叉树中,T所指结点没有左子树的充要条件是。
5.在非空树上,_____没有直接前趋。
6.深度为k的二叉树最多有结点,最少有个结点。
7.若按层次顺序将一棵有n个结点的完全二叉树的所有结点从1到n编号,那么当i为且小于n时,结点i的右兄弟是结点,否则结点i没有右兄弟。
8.N个结点的二叉树采用二叉链表存放,共有空链域个数为。
9.一棵深度为7的满二叉树有___ ___个非终端结点。
10.将一棵树转换为二叉树表示后,该二叉树的根结点没有。
11.采用二叉树来表示树时,树的先根次序遍历结果与其对应的二叉树的遍历结果是一样的。
12.一棵Huffman树是带权路径长度最短的二叉树,权值的外结点离根较远。
二、判断题(如果正确,在对应位置打“√”,否则打“⨯”。
每题0.5分,共5分)1.对于一棵非空二叉树,它的根结点作为第一层,则它的第i层上最多能有2i-1个结点。
2.二叉树的前序遍历并不能唯一确定这棵树,但是,如果我们还知道该二叉树的根结点是那一个,则可以确定这棵二叉树。
3.一棵树中的叶子结点数一定等于与其对应的二叉树中的叶子结点数。
4.度≤2的树就是二叉树。
5.一棵Huffman树是带权路径长度最短的二叉树,权值较大的外结点离根较远。
6.采用二叉树来表示树时,树的先根次序遍历结果与其对应的二叉树的前序遍历结果是一样的。
7.不存在有偶数个结点的满二叉树。
8.满二叉树一定是完全二叉树,而完全二叉树不一定是满二叉树。
9.已知二叉树的前序遍历顺序和中序遍历顺序,可以惟一确定一棵二叉树;10.已知二叉树的前序遍历顺序和后序遍历顺序,不能惟一确定一棵二叉树;三、单项选择(请将正确答案的代号填写在下表对应题号下面。
数据结构习题第六章树和二叉树
第六章 树和二叉树一、选择题1.已知一算术表达式的中缀形式为 A+B*C-D/E ,后缀形式为ABC*+DE/-,其前缀形式为( )A .-A+B*C/DE B. -A+B*CD/E C .-+*ABC/DE D.-+A*BC/DE【北京航空航天大学 1999 一、3 (2分)】2.算术表达式a+b*(c+d/e )转为后缀表达式后为( )【中山大学 1999 一、5】A .ab+cde/*B .abcde/+*+C .abcde/*++D 3. 设有一表示算术表达式的二叉树(见下图),它所表示的算术表达式是( ) 【南京理工大学1999 一、20(2分)】 A. A*B+C/(D*E)+(F-G) B. (A*B+C)/(D*E)+(F-G) C. (A*B+C)/(D*E+(F-G )) D. A*B+C/D*E+F-G 4. 设树T 的度为4,其中度为1,2,3和4的结点个数分别为4,2,1,1 则T 中的叶子数为( )A .5B .6C .7D .8【南京理工大学 2000 一、8 (1.5分)】5. 在下述结论中,正确的是( )【南京理工大学 1999 一、4 (1分)】①只有一个结点的二叉树的度为0; ②二叉树的度为2; ③二叉树的左右子树可任意交换;④深度为K 的完全二叉树的结点个数小于或等于深度相同的满二叉树。
A .①②③B .②③④C .②④D .①④6. 设森林F 对应的二叉树为B ,它有m 个结点,B 的根为p,p 的右子树结点个数为n,森林F 中第一棵树的结点个数是( )A .m-nB .m-n-1C .n+1D .条件不足,无法确定 【南京理工大学2000一、17(1.5分)】7. 树是结点的有限集合,它( (1))根结点,记为T 。
其余结点分成为m (m>0)个((2))的集合T1,T2, …,Tm ,每个集合又都是树,此时结点T 称为Ti 的父结点,Ti 称为T的子结点(1≤i ≤m )。
《数据结构》习题集:第6章 树和二叉树
第6章树和二叉树一、选择题1.有一“遗传”关系,设x是y的父亲,则x可以把它的属性遗传给y,表示该遗传关系最适合的数据结构是( D )A、向量B、树C、图D、二叉树2.树最适合用来表示( B )A、有序数据元素B、元素之间具有分支层次关系的数据C、无序数据元素D、元素之间无联系的数据3.树B 的层号表示为1a,2b,3d,3e,2c,对应于下面选择的( C )A、1a(2b(3d,3e),2c)B、a(b(D,e),c)C、a(b(d,e),c)D、a(b,d(e),c)4.对二叉树的结点从1 开始连续编号,要求每个结点的编号大于其左、右孩子的编号,同一结点的左右孩子中,其左孩子的编号小于其右孩子的编号,则可采用( B )次序的遍历实现二叉树的结点编号。
A、先序B、中序C、后序D、从根开始按层次遍历5.按照二叉树的定义,具有3 个结点的二叉树有(C )种。
A、3B、4C、5D、66.在一棵有n个结点的二叉树中,若度为2的结点数为n2,度为1的结点数为n1,度为0的结点数为n0,则树的最大高度为(),其叶结点数为();树的最小高度为(),其叶结点数为();若采用链表存储结构,则有()个空链域。
log+1 C、log2n D、nA、n/2B、⎣⎦n2E、n0+n1+n2F、n1+n2G、n2+1H、1I、n+1 J、n1K、n2L、n1+17.对一棵满二叉树,m 个树叶,n 个结点,深度为h,则( D )A、n=m+hB、h+m=2nC、m=h-1D、n=2h-18.设高度为h 的二叉树中只有度为0 和度为2 的结点,则此类二叉树中所包含的结点数至少为( A ),至多为(D )。
A、2hB、2h-1C、2h-1D、2h-19.在一棵二叉树上第5 层的结点数最多为(B)(假设根结点的层数为1)A、8B、16C、15D、3210.深度为5 的二叉树至多有( C )个结点。
A、16B、32C、31D、1011.一棵有124 个叶结点的完全二叉树,最多有(B )个结点A、247B、248C、249D、25012.含有129 个叶子结点的完全二叉树,最少有( B )个结点A、254B、255C、256D、25713.假定有一棵二叉树,双分支结点数为15,单分支结点数为30,则叶子结点数为( D )个。
第6章 树和二叉树-习题-答案
第6章树和二叉树习题答案1.从概念上讲,树,森林和二叉树是三种不同的数据结构,将树,森林转化为二叉树的基本目的是什么,并指出树和二叉树的主要区别。
答:树的孩子兄弟链表表示法和二叉树二叉链表表示法,本质是一样的,只是解释不同,也就是说树(树是森林的特例,即森林中只有一棵树的特殊情况)可用二叉树唯一表示,并可使用二叉树的一些算法去解决树和森林中的问题。
树和二叉树的区别有三:一是二叉树的度至多为2,树无此限制;二是二叉树有左右子树之分,即使在只有一个分枝的情况下,也必须指出是左子树还是右子树,树无此限制;三是二叉树允许为空,树一般不允许为空(个别书上允许为空)。
2.请分析线性表、树、广义表的主要结构特点,以及相互的差异与关联。
答:线性表属于约束最强的线性结构,在非空线性表中,只有一个“第一个”元素,也只有一个“最后一个”元素;除第一个元素外,每个元素有唯一前驱;除最后一个元素外,每个元素有唯一后继。
树是一种层次结构,有且只有一个根结点,每个结点可以有多个子女,但只有一个双亲(根无双亲),从这个意义上说存在一(双亲)对多(子女)的关系。
广义表中的元素既可以是原子,也可以是子表,子表可以为它表共享。
从表中套表意义上说,广义表也是层次结构。
从逻辑上讲,树和广义表均属非线性结构。
但在以下意义上,又蜕变为线性结构。
如度为1的树,以及广义表中的元素都是原子时。
另外,广义表从元素之间的关系可看成前驱和后继,也符合线性表,但这时元素有原子,也有子表,即元素并不属于同一数据对象。
3.在二叉树的Llink-Rlink存储表示中,引入“线索”的好处是什么?答:在二叉链表表示的二叉树中,引入线索的目的主要是便于查找结点的前驱和后继。
因为若知道各结点的后继,二叉树的遍历就变成非常简单。
二叉链表结构查结点的左右子女非常方便,但其前驱和后继是在遍历中形成的。
为了将非线性结构二叉树的结点排成线性序列,利用结点的空链域,左链为空时用作前驱指针,右链为空时作为后继指针。
数据结构(本)单元6树和二叉树单元测试
数据结构(本)单元6树和二叉树单元测试(题+答案)题目1、假定一棵二叉树中,双分支结点数为15,单分支结点数为30,则叶子结点数为()。
A. 15B. 16C. 47D. 17题目2、已知某二叉树的后续遍历序列是dabec,中序遍历是debac,则它的先序遍历序列是()。
A. cedbaB. decabC. acbedD. deabc题目3、二叉树第k层上最多有()个结点。
A.B.C.D. 2k题目4、二叉树的深度为k,则二叉树最多有()个结点。
A.B.C. 2kD. 2k-1题目5、设某一二叉树先序遍历为abdec,中序遍历为dbeac,则该二叉树后序遍历的顺序是()。
A. debacB. debcaC. abedcD. abdec题目6、设某一二叉树中序遍历为badce,后序遍历为bdeca,则该二叉树先序遍历的顺序是()。
A. debacB. decabC. adbecD. abcde题目7、树最适合于用来表示()。
A. 元素之间有包含和层次关系的数据B. 元素之间无前驱和后继关系的数据C. 顺序结构的数据D. 线性结构的数据题目8、一棵非空的二叉树,先序遍历与后续遍历正好相反,则该二叉树满足()。
A. 任意二叉树B. 无左孩子C. 只有一个叶子结点D. 无右孩子题目9、设a,b为一棵二叉树的两个结点,在后续遍历中,a在b前的条件是()。
A. a在b左方B. a在b右方C. a在b上方D. a在b下方题目10、权值为{1,2,6,8}的四个结点构成的哈夫曼树的带权路径长度是()。
A. 29B. 18C. 19D. 28题目11、如果将给定的一组数据作为叶子数值,所构造出的二叉树的带权路径长度最小,则该树称为()。
A. 哈夫曼树B. 平衡二叉树C. 二叉树D. 完全二叉树题目12、下列有关二叉树的说法正确的是()。
A. 完全二叉树中,任何一个结点的度,或者为0或者为2B. 二叉树中度为0的结点的个数等于度为2的结点的个数加1C. 二叉树的度是2D. 二叉树中结点个数必大于0题目13、二叉树是非线性数据结构,所以()。
第6章 树和二叉树习题
第六章树和二叉树一、选择题4. 设树T的度为4,其中度为1,2,3和4的结点个数分别为4,2,1,1 则T中的叶子数为()A.5 B.6 C.7 D.85. 在下述结论中,正确的是()①只有一个结点的二叉树的度为0; ②二叉树的度为2;③二叉树的左右子树可任意交换;④深度为K的完全二叉树的结点个数小于或等于深度相同的满二叉树。
A.①②③ B.②③④ C.②④ D.①④8.若一棵二叉树具有10个度为2的结点,5个度为1的结点,则度为0的结点个数是()A.9 B.11 C.15 D.不确定9.在一棵三元树中度为3的结点数为2个,度为2的结点数为1个,度为1的结点数为2个,则度为0的结点数为()个A.4 B.5 C.6 D.711.具有10个叶结点的二叉树中有()个度为2的结点,A.8 B.9 C.10 D.ll12.一棵完全二叉树上有1001个结点,其中叶子结点的个数是()A. 250 B. 500 C.254 D.505 E.以上答案都不对13. 设给定权值总数有n 个,其哈夫曼树的结点总数为( )A.不确定 B.2n C.2n+1 D.2n-114. 有n个叶子的哈夫曼树的结点总数为()。
A.不确定 B.2n C.2n+1 D.2n-115.若度为m的哈夫曼树中,其叶结点个数为n,则非叶结点的个数为()。
A.n-1 B.⎣n/m⎦-1 C.⎡(n-1)/(m-1)⎤D.⎡n/(m-1)⎤-1E.⎡(n+1)/(m+1)⎤-116. 有关二叉树下列说法正确的是()A.二叉树的度为2 B.一棵二叉树的度可以小于2 C.二叉树中至少有一个结点的度为2 D.二叉树中任何一个结点的度都为217.二叉树的第I层上最多含有结点数为()A.2I B. 2I-1-1 C. 2I-1 D.2I -118. 一个具有1025个结点的二叉树的高h为()A.11 B.10 C.11至1025之间 D.10至1024之间19.一棵二叉树高度为h,所有结点的度或为0,或为2,则这棵二叉树最少有( )结点A.2h B.2h-1 C.2h+1 D.h+122.深度为h的满m叉树的第k层有()个结点。
树与二叉树.doc
树与二叉树(总分:228.00,做题时间:90分钟)一、单项选择题(总题数:24,分数:48.00)1.具有10个叶结点的二叉树中有( )个度为2的结点。
(分数:2.00)A.8B.9C.10D.112.分别以下列序列构造二叉排序树,与用其他三个序列所构造的结果不同的是( )。
(分数:2.00)A.(100,80,90,60,120,110,130)B.(100,120,110,130,80,60,90)C.(100,60,80,90,120,110,130)D.(100,80,60,90,120,130,110)3.一棵左子树为空的二叉树在先序线索化后,其中空的链域的个数是( )。
(分数:2.00)A.不确定B.0C.1D.24.中缀表达式D/C“A+B*E—D*F的前缀表达式为( )。
(分数:2.00)A.-+/D^CA*BE*DFB.DCA^/BE*+DF*-C.-C^A+/D*BE*DFD.-+/D^C*ABE*DF5.设F是一个森林,B是由F变换得的二叉树。
若F中有n个非终端结点,则B中右指针域为空的结点有( )个。
(分数:2.00)A.n-1B.nC.n+1D.n+26.一棵二叉树的前序遍历序列为ABCDEFG,它的中序遍历序列可能是( )。
(分数:2.00)A.CABDEFGB.ABCDEFGC.DACEFBGD.ADCFEG7.在一棵三元树中度为3的结点数为2个,度为2的结点数为1个,度为1的结点数为2个,则度为0的结点数为( )个。
(分数:2.00)A.4B.5C.6D.78.设有一表示算术表达式的二叉树(见图),它所表示的算术表达式是( )。
2.00)A.B.C.D.9.已知一棵二叉树先序遍历结果为ABDEFG,中序遍历结果为BAEDGF,则后序遍历结果为( )。
(分数:2.00)A.BCDEFAB.BFDECAC.BEGFDAD.BEFGDA10.设某哈夫曼树中有199个结点,则该哈夫曼树中有( )个叶子结点。
数据结构第六章树和二叉树习题及答案
习题六树和二叉树一、单项选择题1.以下说法错误的是 ( )A.树形结构的特点是一个结点可以有多个直接前趋B.线性结构中的一个结点至多只有一个直接后继C.树形结构可以表达(组织)更复杂的数据D.树(及一切树形结构)是一种"分支层次"结构E.任何只含一个结点的集合是一棵树2.下列说法中正确的是 ( )A.任何一棵二叉树中至少有一个结点的度为2B.任何一棵二叉树中每个结点的度都为2C.任何一棵二叉树中的度肯定等于2D.任何一棵二叉树中的度可以小于23.讨论树、森林和二叉树的关系,目的是为了()A.借助二叉树上的运算方法去实现对树的一些运算B.将树、森林按二叉树的存储方式进行存储C.将树、森林转换成二叉树D.体现一种技巧,没有什么实际意义4.树最适合用来表示 ( )A.有序数据元素 B.无序数据元素C.元素之间具有分支层次关系的数据 D.元素之间无联系的数据5.若一棵二叉树具有10个度为2的结点,5个度为1的结点,则度为0的结点个数是()A.9 B.11 C.15 D.不确定6.设森林F中有三棵树,第一,第二,第三棵树的结点个数分别为M1,M2和M3。
与森林F 对应的二叉树根结点的右子树上的结点个数是()。
A.M1 B.M1+M2 C.M3 D.M2+M37.一棵完全二叉树上有1001个结点,其中叶子结点的个数是()A. 250 B. 500 C.254 D.505 E.以上答案都不对8. 设给定权值总数有n 个,其哈夫曼树的结点总数为( )A.不确定 B.2n C.2n+1 D.2n-19.二叉树的第I层上最多含有结点数为()A.2I B. 2I-1-1 C. 2I-1 D.2I -110.一棵二叉树高度为h,所有结点的度或为0,或为2,则这棵二叉树最少有( )结点A.2h B.2h-1 C.2h+1 D.h+111. 利用二叉链表存储树,则根结点的右指针是()。
A.指向最左孩子 B.指向最右孩子 C.空 D.非空12.已知一棵二叉树的前序遍历结果为ABCDEF,中序遍历结果为CBAEDF,则后序遍历的结果为()。
树和二叉树-第6章-《数据结构题集》习题解析-严蔚敏吴伟民版
树和⼆叉树-第6章-《数据结构题集》习题解析-严蔚敏吴伟民版习题集解析部分第6章树和⼆叉树——《数据结构题集》-严蔚敏.吴伟民版源码使⽤说明链接☛☛☛课本源码合辑链接☛☛☛习题集全解析链接☛☛☛相关测试数据下载链接☛本习题⽂档的存放⽬录:数据结构\▼配套习题解析\▼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的叶⼦结点。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
习题6树和二叉树
说明:
本文档中,凡红色字标出的题请提交纸质作业,只写题号和答案即可。
6.1单项选择题
1. 由于二叉树屮每个结点的度最大为2,所以二叉树是一种特殊的树,这种说法_B_。
A. 正确
B.错误
2. 假定在一棵二叉树屮,双分支结点数为15,单分支结点数为30个,则叶子结点数为 B_个。
A. 15 B. 16 C. 17 D. 47
3. 按照二叉树的定义,具有3个结点的不同形状的二叉树有_C_种。
A. 3
B.4
C. 5
D. 6
4. 按照二叉树的定义,具有3个不同数据结点的不同的二叉树有_C_种。
A.5
B.6
C. 30
D. 32
5. 深度为5的二叉树至多有_C_个结点。
A. 16
B. 32
C. 31
D. 10
6. 设高度为h 的二叉树上只有度为0和度为2的结点,则此类二叉树中所包含的结点 数至少为 B 。
A. 2h
B. 2h-l
C. 2h+l
D. h+l
7. 对一个满二叉树,m 个树叶,n 个结点,深度为h,则_A_。
A. n=h+m
B. h+m=2n
C. m=h-1
D. n=2 h -l
8. 任何一棵二叉树的叶结点在先序、中序和后序遍历序列中的相对次序_A_。
A.不发生改变
B.发生改变
C.不能确定
D.以上都不对
9. 如杲某二叉树的前根次序遍历结果为stuwv,中序遍历为uwtvs,那么该二叉树的后
序为_C_。
A. uwvts B. vwuts C. wuvts D. wutsv
10. 二叉树的前序遍历序列中,任意一个结点均处在其子女结点的前面,这种说法_A_。
A.正确
B.错误
11. 某二叉树的前序遍历结点访问顺序是abdgcefh,中序遍历的结点访问顺序是 dgbaechf,则其后序遍历的结点访问顺序是_D_。
A. bdgcefha
B. gdbecfha 12. 在一非空二叉树的中序遍历序列中, A.只有右子树上的所有结点 13. 如图6.1所示二叉树的中序遍历序列是_B_。
14. 一棵二叉树如图6.2所示,其中序遍历的序列为 B 。
A. abdgcefh
B. dgbaechf
C. gdbehfca
D. abcdefgh
C. bdgaechf
D. gdbehfca 根结点的右边_A_。
B.只有右子树上的部分结点
C.只有左子树上的部分结点
D.只有左子树上的所有结点
A. abcdgef
B. dfebagc
C. dbaefcg
D. defbagc
图6」
15.设a,b为一棵二叉树上的两个结点,在中序遍历吋,a在b前的条件是一B
A. a在b的右方
B. a在b的左方
C. a是b的祖先
D. a是b的子孙
16.已知某二叉树的后序遍历序列是dabec,中序遍历序列是debac,它的前序遍历序列
是_D_o A. acbed B. decab C. deabc D. cedba
17.实现任意二叉树的后序遍历的非递归算法而不使用栈结构,最佳方案是二叉树采用_(2_存储结构。
A.二叉链表
B.广义表存储结构
C.三叉链表
D.顺序存储结构
18.如图6.3所示的4棵二叉树,_C_不是完全二叉树。
24.树的基本遍历策略可分为先根遍历和后根遍历;二叉树的基本遍历策略可分为先序遍历、中序遍历和后序遍历。
这里,我们把由树转化得到的二叉树叫做这棵数对应的二叉树。
结论_A_是正确的。
A.树的先根遍历序列与其对应的二叉树的先序遍历序列相同
B.树的后根遍历序列与其对应的二叉树的后序遍历序列相同
C.树的先根遍历序列与其对应的二叉树的中序遍历序列相同
D.以上都不对
25.树最适合用来表示_C_。
A.有序数据元素
C.元素之间具有分支层次关系的数据B.无序数据元素
D.元素之间无联系的数据
6.2 填空题(将正确的答案填在相应的空中)
1.有一棵树如图6.5所示,回答下面的问题:
(1)这棵树的根结点是_kO_;
(2)这棵树的叶子结点是—:
(3)结点k3的度是_2_;
(4)这棵树的度是_3_;
(5)这棵树的深度是_4_;
(6)结点k3的子女是_k5,k6_;
(7)结点k3的父结点是_kl_;
2.指出树和二叉树的三个主要差别:
①树的结点个数至少为1,而二叉树的结点个数可以为0
②树屮结点的最大度数没有限制,而二叉树结点的最大度数为2
③树的结点无左、右之分,而二叉树的结点有左、右之分
3.从概念上讲,树与二叉树是两种不同的数据结构,将树转化为二叉树的基本目的是树可
釆用二叉树的存储结构并利用二叉树的已有算法解决树的有关问题一。
4.一棵二叉树的结点数据采用顺序存储结构,存储于数组t中,如图6.6所示,则该二
图6.3
图6. 6 —棵二叉树的顺序存储数组t
5•深度为k 的完全二叉树至少有_2k ・l_个结点。
至多有_2k ・l_个结点,若按自上而 下,从左到右次序给结点编号(从1开始),则编号最小的叶子结点的编号是_lk-2+l_o
6.在一•棵二叉树屮,度为零的结点的个数为n °,度为2的结点的个数为n 2,则有
n 0=—n2+l —o
7. 一棵二叉树的第i (i$l)层最多有_2i-l_个结点;一棵有n (n>0)个结点的满二 叉树共有_(n+1 )/2—个叶子和_(n-1 )/2—个非终端结点。
&结点最少的树为—只有一个结点的树_,结点最少的二叉树为—空的二叉树
9•现有按中序遍历二叉树的结果为abc,问有_5—种不同形态的二叉树可以得到这一
10.由如图6.7所示的二叉树,回答以下问题: (1)其中序遍历序列为_dgbaechif_; ⑵其前
序遍历序列为_abdgcefhi_;
(3)其后序遍历序列为_gdbeihfca_;
6.3简答题
1. 根据二叉树的定义,具有三个结点的二叉树有5种不同的形态,请将它们分别画出。
E16.ll 树形5种e a f d g
c j 1 h
b 13 14 15 16 17 18 19 20 21 123456789
叉树的链接表示形式为 _______
10 11 12 E6.10树形5种
叉 树
2.假设一棵二叉树的先序序列为EBADCFHGIKJ和中序序列为ABCDEFGHIJKo 请画
出该树。
4.己知一棵树如图6.8所示, 转化为一棵二叉树,表示为
图6.8 一棵树
E 6.15 一棵树的孩子兄弟表
5.以数据集{4, 5, 6, 7, 10, 12, 18}为结点权值,画出构造Huffman树的每一步图示,计算
其带权路径长度为。
4 5
图6.16 Huffman树
6.一棵含有N个结点的k叉树,可能达到的最大深度和最小深度各为多少?最大深度:h
二N-k+l,最小深度:logkN+1
7.证明:一棵满k叉树上的叶子结点数n()和非叶子结点数n |之间满足以下关系:
H0=(k・l)n[+1
6.4算法设计题
1.编写按层次顺序(同一层自左至右)遍历二叉树的算法。
2.试编写算法,对一棵二叉树,统计叶子的个数。
3.试编写算法,对一棵二叉树根结点不变,将左、右子树进行交换,树中每个结点的左、
右子树进行交换。
7.假设用于通讯的电文仅有八个字母(a, b, c, d, e, f, g, h)组成,字母在电文中出现的频率
分别为0.07, 0. 19, 0.02, 0. 06, 0. 32, 0. 03, 0.21, 0.10。
试为这八个字母设计哈夫曼编码。
使用0-7的二进制表示形式是另一种编码方案。
对于上述实例,比较两种方案的优缺点。
8.试编写算法,对一棵以孩子■兄弟链表表示的树统计叶子的丫数。
假设一棵二叉树的先序序列为EBADCFHGIKJ和中序序列为ABCDEFGHIJK。
请画出该树。