第6章 树和二叉树(相关试题)数据结构

合集下载

数据结构-6 树和二叉树

数据结构-6 树和二叉树

第六章树和二叉树一.选择题1. 以下说法错误的是。

A.树形结构的特点是一个结点可以有多个直接前趋B.线性结构中的一个结点至多只有一个直接后继C.树形结构可以表达(组织)更复杂的数据D.树(及一切树形结构)是一种"分支层次"结构2. 如图6-2所示的4 棵二叉树中,不是完全二叉树。

图6-2 4 棵二叉树3. 在线索化二叉树中,t 所指结点没有左子树的充要条件是。

A. t->left == NULLB. t->ltag==1C. t->ltag==1 且t->left==NULL D .以上都不对4. 以下说法错误的是。

A.二叉树可以是空集B.二叉树的任一结点最多有两棵子树C.二叉树不是一种树D.二叉树中任一结点的两棵子树有次序之分5. 以下说法错误的是。

A.完全二叉树上结点之间的父子关系可由它们编号之间的关系来表达B.在三叉链表上,二叉树的求双亲运算很容易实现C.在二叉链表上,求根,求左、右孩子等很容易实现D.在二叉链表上,求双亲运算的时间性能很好6. 如图6-3所示的4 棵二叉树,是平衡二叉树。

图6-3 4 棵二叉树7. 如图6-4所示二叉树的中序遍历序列是。

A. abcdgefB. dfebagcC. dbaefcgD. defbagc图6-4 1 棵二叉树8. 已知某二叉树的后序遍历序列是dabec,中序遍历序列是debac,它的前序遍历序列是。

A. acbedB. decabC. deabcD. cedba9. 如果T2 是由有序树T 转换而来的二叉树,那么T 中结点的前序就是T2 中结点的。

A. 前序B.中序C. 后序D. 层次序10. 某二叉树的前序遍历结点访问顺序是abdgcefh,中序遍历的结点访问顺序是dgbaechf,则其后序遍历的结点访问顺序是。

A. bdgcefhaB. gdbecfhaC. bdgaechfD. gdbehfca11. 将含有83个结点的完全二叉树从根结点开始编号,根为1号,后面按从上到下、从左到右的顺序对结点编号,那么编号为41的双亲结点编号为。

数据结构习题第六章 树和二叉树答案

数据结构习题第六章  树和二叉树答案

第六章树和二叉树注:参考答案只能作为参考,也是有错的,自己要学会辨别。

一、单项选择题1.A2.D3.A4.C5.B6.D7.E8. D9.C10.B11. C12.A13.D14.B15.C16.B17.D18.B19. D20.C二、判断题(在各题后填写“√”或“×”)1. 完全二叉树一定存在度为1的结点。

×2. 对于有N个结点的二叉树,其高度为log2n。

×3. 二叉树的遍历只是为了在应用中找到一种线性次序。

√4. 一棵一般树的结点的前序遍历和后序遍历分别与它相应二叉树的结点前序遍历和后序遍历是一致的。

×5. 用一维数组存储二叉树时,总是以前序遍历顺序存储结点。

×6.中序遍历一棵二叉排序树的结点就可得到排好序的结点序列√7.完全二叉树中,若一个结点没有左孩子,则它必是树叶。

√8. 二叉树只能用二叉链表表示。

×9. 给定一棵树,可以找到唯一的一棵二叉树与之对应。

√10. 用链表(llink-rlink)存储包含n个结点的二叉树,结点的2n个指针区域中有n-1个空指针。

×11.树形结构中元素之间存在一个对多个的关系。

√12.将一棵树转成二叉树,根结点没有左子树。

×13.度为二的树就是二叉树。

×14.二叉树中序线索化后,不存在空指针域。

×15.霍夫曼树的结点个数不能是偶数。

√16.哈夫曼树是带权路径长度最短的树,路径上权值较大的结点离根较近。

√三、填空题1.p->lchild==null && p->rchlid==null2.(1)2k-1 (2)2k-13.644. 2n n-1 n+15.先序遍历后序遍历中序遍历6..(1)2k-2+1(第k层1个结点,总结点个数是2H-1,其双亲是2H-1/2=2k-2)(2) ⎣log2i⎦+1 7.48.任何结点至多只有右子女的二叉树。

数据结构-习题-第六章-树

数据结构-习题-第六章-树

数据结构-习题-第六章-树和二叉树E F D G A B / + + * - C * 第六章 树和二叉树一、选择题1.已知一算术表达式的中缀形式为 A+B*C-D/E ,后缀形式为ABC*+DE/-,其前缀形式为( )A .-A+B*C/DE B. -A+B*CD/EC .-+*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 .abcde*/++ 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-G4. 设树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-n B.m-n-1 C.n+1 D.条件不足,无法确定【南京理工大学2000 一、17(1.5分)】7. 树是结点的有限集合,它( (1))根结点,记为T。

其余结点分成为m(m>0)个((2))的集合T1,T2,…,Tm,每个集合又都是树,此时结点T称为Ti的父结点,Ti称为T的子结点(1≤i≤m)。

目前最完整的数据结构1800题包括完整答案树和二叉树答案

目前最完整的数据结构1800题包括完整答案树和二叉树答案

第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. 用顺序存储二叉树时,要按完全二叉树的形式存储,非完全二叉树存储时,要加“虚结点”。

数据结构 第六章 树和二叉树作业及答案

数据结构 第六章 树和二叉树作业及答案

第六章树和二叉树作业一、选择题(每题2分,共24分)。

1. 一棵二叉树的顺序存储情况如下:树中,度为2的结点数为( C )。

A.1 B.2 C.3 D.42. 一棵“完全二叉树”结点数为25,高度为(B )。

A.4 B.5 C.6 D.不确定3.下列说法中,(B )是正确的。

A. 二叉树就是度为2的树B. 二叉树中不存在度大于2的结点C. 二叉树是有序树D. 二叉树中每个结点的度均为24.一棵二叉树的前序遍历序列为ABCDEFG,它的中序遍历序列可能是(B )。

A. CABDEFGB. BCDAEFGC. DACEFBGD. ADBCFEG5.线索二叉树中的线索指的是(C )。

A.左孩子 B.遍历 C.指针 D.标志6. 建立线索二叉树的目的是(A )。

A. 方便查找某结点的前驱或后继B. 方便二叉树的插入与删除C. 方便查找某结点的双亲D. 使二叉树的遍历结果唯一7. 有 D )示意。

A.B.C.D.8. 一颗有2046个结点的完全二叉树的第10层上共有(B )个结点。

A. 511B. 512C. 1023D. 10249. 一棵完全二叉树一定是一棵(A )。

A. 平衡二叉树B. 二叉排序树C. 堆D. 哈夫曼树10.某二叉树的中序遍历序列和后序遍历序列正好相反,则该二叉树一定是( C )的二叉树。

A .空或只有一个结点B .高度等于其结点数C .任一结点无左孩子D .任一结点无右孩子11.一棵二叉树的顺序存储情况如下:1 2 3 4 5 6 7 8 9 10 11 12 13 14 15A B C D E 0 F 0 0 G H 0 0 0 X结点D 的左孩子结点为( D )。

A .EB .C C .FD .没有12.一棵“完全二叉树”结点数为25,高度为( B )。

A .4B .5C .6D .不确定二、填空题(每空3分,共18分)。

1. 树的路径长度:是从树根到每个结点的路径长度之和。

对结点数相同的树来说,路径长度最短的是 完全 二叉树。

数据结构课后习题(第6章)

数据结构课后习题(第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章 树和二叉树

第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树和二叉树单元测试

数据结构(本)单元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树和二叉树单元测试

数据结构(本)单元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、二叉树是非线性数据结构,所以()。

《数据结构》习题汇编06 第六章 树和二叉树 试题

《数据结构》习题汇编06 第六章 树和二叉树 试题

第六章树和二叉树试题一、单项选择题1.树中所有结点的度等于所有结点数加()。

A. 0B. 1C. -1D. 22.在一棵树中,()没有前驱结点。

A. 分支结点B. 叶结点C. 根结点D. 空结点3.在一棵二叉树的二叉链表中,空指针域数等于非空指针域数加()。

A. 2B. 1C. 0D. -14.在一棵具有n个结点的二叉树中,所有结点的空子树个数等于()。

A. nB. n-1C. n+1D. 2*n5.在一棵具有n个结点的二叉树的第i层上(假定根结点为第0层,i大于等于0而小于等于树的高度),最多具有()个结点。

A. 2iB. 2i+1C. 2i-1D. 2n6.在一棵高度为h(假定根结点的层号为0)的完全二叉树中,所含结点个数不小于()。

A. 2h-1B. 2h+1C. 2h-1D. 2h7.在一棵具有35个结点的完全二叉树中,该树的高度为()。

假定空树的高度为-1。

A. 5B. 6C. 7D. 88.在一棵具有n个结点的完全二叉树中,分支结点的最大编号为()。

假定树根结点的编号为0。

A. ⎣(n-1)/2⎦B. ⎣n/2⎦C. ⎡n/2⎤D. ⎣n/2⎦ -19.在一棵完全二叉树中,若编号为i的结点存在左孩子,则左子女结点的编号为()。

假定根结点的编号为0A. 2iB. 2i-1C. 2i+1D. 2i+210.在一棵完全二叉树中,假定根结点的编号为0,则对于编号为i(i>0)的结点,其双亲结点的编号为()。

A. ⎣(i+1)/2⎦B. ⎣(i-1)/2⎦C. ⎣i/2⎦D. ⎣i/2⎦ -111.在一棵树的左子女-右兄弟表示法中,一个结点的右孩子是该结点的()结点。

A. 兄弟B. 子女C. 祖先D. 子孙12.在一棵树的静态双亲表示中,每个存储结点包含()个域。

A. 1B. 2C. 3D. 413.已知一棵二叉树的广义表表示为a (b (c), d (e ( , g (h) ), f ) ),则该二叉树的高度为A. 3B. 4C. 5D. 614.已知一棵树的边集表示为 {<A, B>, <A, C>, <B, D>, <C, E>, <C, F>, <C, G>, <F, H>,<F, I>},则该树的高度为()。

第6章_数据结构习题题目及答案_树和二叉树_参考答案

第6章_数据结构习题题目及答案_树和二叉树_参考答案

一、基础知识题6.1设树T的度为4,其中度为1,2,3和4的结点个数分别为4,2,1,1,求树T中的叶子数。

【解答】设度为m的树中度为0,1,2,…,m的结点数分别为n0, n1, n2,…, nm,结点总数为n,分枝数为B,则下面二式成立n= n0+n1+n2+…+nm (1)n=B+1= n1+2n2 +…+mnm+1 (2)由(1)和(2)得叶子结点数n0=1+即: n0=1+(1-1)*4+(2-1)*2+(3-1)*1+(4-1)*1=86.2一棵完全二叉树上有1001个结点,求叶子结点的个数。

【解答】因为在任意二叉树中度为2 的结点数n2和叶子结点数n0有如下关系:n2=n0-1,所以设二叉树的结点数为n, 度为1的结点数为n1,则n= n0+ n1+ n2n=2n0+n1-11002=2n0+n1由于在完全二叉树中,度为1的结点数n1至多为1,叶子数n0是整数。

本题中度为1的结点数n1只能是0,故叶子结点的个数n0为501.注:解本题时要使用以上公式,不要先判断完全二叉树高10,前9层是满二叉树,第10层都是叶子,……。

虽然解法也对,但步骤多且复杂,极易出错。

6.3 一棵124个叶结点的完全二叉树,最多有多少个结点。

【解答】由公式n=2n0+n1-1,当n1为1时,结点数达到最多248个。

6.4.一棵完全二叉树有500个结点,请问该完全二叉树有多少个叶子结点?有多少个度为1的结点?有多少个度为2的结点?如果完全二叉树有501个结点,结果如何?请写出推导过程。

【解答】由公式n=2n0+n1-1,带入具体数得,500=2n0+n1-1,叶子数是整数,度为1的结点数只能为1,故叶子数为250,度为2的结点数是249。

若完全二叉树有501个结点,则叶子数251,度为2的结点数是250,度为1的结点数为0。

6.5 某二叉树有20个叶子结点,有30个结点仅有一个孩子,则该二叉树的总结点数是多少。

数据结构及应用算法教程习题第六章 二叉树和树

数据结构及应用算法教程习题第六章 二叉树和树

第六章二叉树和树一、选择题2. 设树T的度为4,其中度为1,2,3和4的结点个数分别为4,2,1,1 则T中的叶子数为( D )A.5 B.6 C.7 D.83. 在下述结论中,正确的是( D )①只有一个结点的二叉树的度为0; ②二叉树的度为2;③二叉树的左右子树可任意交换;④深度为K的完全二叉树的结点个数小于或等于深度相同的满二叉树。

A.①②③B.②③④C.②④D.①④4. 设森林F对应的二叉树为B,它有m个结点,B的根为p,p的右子树结点个数为n,森林F中第一棵树的结点个数是( A )A.m-n B.m-n-1 C.n+1 D.条件不足,无法确定6.若一棵二叉树具有10个度为2的结点,5个度为1的结点,则度为0的结点个数是()A.9 B.11 C.15 D.不确定7.设森林F中有三棵树,第一,第二,第三棵树的结点个数分别为M1,M2和M3。

与森林F对应的二叉树根结点的右子树上的结点个数是()。

A.M1 B.M1+M2 C.M3 D.M2+M38.具有10个叶结点的二叉树中有()个度为2的结点。

A.8 B.9 C.10 D.ll9. 设给定权值总数有n 个,其哈夫曼树的结点总数为( D )A.不确定B.2n C.2n+1 D.2n-110. 有n个叶子的哈夫曼树的结点总数为()。

A.不确定B.2n C.2n+1 D.2n-112. 有关二叉树下列说法正确的是()A.二叉树的度为2 B.一棵二叉树的度可以小于2 C.二叉树中至少有一个结点的度为2 D.二叉树中任何一个结点的度都为2 13.二叉树的第I层上最多含有结点数为()A.2I B.2I-1-1 C.2I-1 D.2I -114. 一个具有1025个结点的二叉树的高h为()A.11 B.10 C.11至1025之间D.10至1024之间15.一棵二叉树高度为h,所有结点的度或为0,或为2,则这棵二叉树最少有( )结点A.2h B.2h-1 C.2h+1 D.h+116.对于有n 个结点的二叉树, 其高度为()A.nlog2n B.log2n C.?log2n?|+1 D.不确定17. 一棵具有n个结点的完全二叉树的树高度(深度)是()A.?logn?+1 B.logn+1 C.?logn?D.logn-118.深度为h的满m叉树的第k层有()个结点。

第六章树和二叉树习题_数据结构

第六章树和二叉树习题_数据结构

习题六树和二叉树一、单项选择题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.非空14.在二叉树结点的先序序列,中序序列和后序序列中,所有叶子结点的先后顺序()A.都不相同 B.完全相同C.先序和中序相同,而与后序不同 D.中序和后序相同,而与先序不同15.在完全二叉树中,若一个结点是叶结点,则它没()。

数据结构第06章 树和二叉树习题

数据结构第06章 树和二叉树习题

第六章树和二叉树一、选择题1、用顺序存储的方法,将完全二叉树中所有结点按层逐个从左到右的顺序存放在一维数组R[1..n]中,若结点R[i]有左孩子,则其左孩子是()。

A. R[2i-1]B. R[2i+1]C. R[2i]D. R[2/i]2、用顺序存储的方法,将完全二叉树中所有结点按层逐个从左到右的顺序存放在一维数组R[1..n]中,若结点R[i]有右孩子,则其右孩子是()。

A. R[2i-1]B. R[2i+1]C. R[2i]D. R[2/i]3、设a,b为一棵二叉树上的两个结点,在中序遍历时,a在b前面的条件是()。

A. a在b的右方B. a在b的左方C. a是b的祖先D. a是b的子孙4、设一棵二叉树的中序遍历序列:badce,后序遍历序列:bdeca,则二叉树先序遍历序列为()。

A. adbceB. decabC. debacD. abcde5、对某二叉树进行先序遍历的结果为ABDEFC,中序遍历的结果为DBFEAC,则后序遍历的结果是()。

A. DBFEACB. DFEBCAC. BDFECAD. BDEFAC6、树最适合用来表示()。

A. 有序数据元素B. 无序数据元素C. 元素之间具有分支层次关系的数据D. 元素之间无联系的数据7、在线索二叉树中,t所指结点没有左子树的充要条件是()。

A. t->left==NULLB. t->ltag==1C. t->ltag==1&&t->left==NULLD. 以上都不对8、任何一棵二叉树的叶结点在先序、中序和后序遍历序列中的相对次序()。

A. 不发生改变B. 发生改变C. 不能确定D. 以上都不对9、假定一棵二叉树,度为2的结点数为15,度为1的结点数为30,则叶子结点数为()。

A. 15B. 16C. 17D. 4710、在下列情况中,可称为二叉树的是()。

A. 每个结点至多有两棵子树的树B. 哈夫曼树C. 每个结点至多有两棵子树的有序树D. 每个结点只有一棵子树11、二叉树是()。

【数据结构历年考研试题】第6章树和二叉树

【数据结构历年考研试题】第6章树和二叉树

第六章 树和二叉树一、选择题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 )。

数据结构 习题 第六章 树和二叉树

数据结构 习题 第六章 树和二叉树

第六章 树和二叉树一、选择题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 )。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

24
20.一棵二叉树高度为h,所有结点的度或为0, 或为2,则这棵二叉树最少有( )结点
A.2h B.2h-1 C.2h+1 D.h+1
25
21.一棵树高为K的完全二叉树至少 有( )个结点
A.2k –1 C. 2k-1 B. 2k-1 –1 D. 2k
26
22.对二叉树的结点从1开始进行连续编号, 要求每个结点的编号大于其左、右孩子的 编号,同一结点的左右孩子中,其左孩子 的编号小于其右孩子的编号,可采用( ) 次序的遍历实现编号。
A. CBEFDA C. CBEDFA B. FEDCBA D. 不确定
3
二叉树的遍历
2. 某二叉树的后序遍历序列为dabec,中序遍 历序列为debac,则先序遍历序列为( )。
A.acbed C.deabc B.decab D.cedba
4
二叉树的遍历
3. 对二叉树的结点从1开始进行连续编号, 要求每个结点的编号大于其左、右孩子的 编号,同一结点的左右孩子中,其左孩子 的编号小于其右孩子的编号,可采用( )次 序的遍历实现编号。
A.m-n C.n+1 B.m-n-1 D.条件不足,无法确定
18
16. 若一棵二叉树具有10个度为2的结点,5个 度为1的结点,则度为0的结点个数是( )
A.9 B.11 C.15 D.不确定
19
17. 一棵完全二叉树上有1000个结点,其中叶 子结点的个数是( )
A. 250 D.505 B. 500 C.254 E.以上答案都不对
A.N1 C.N3 B.N1+N2 D.N2+N3
16
14.设树T的度为4,其中度为1,2,3和4的结 点个数分别为4,2,1,1 则T中的叶子数 为( )
A.5 B.6 C.7 D.8
17
15.设森林F对应的二叉树为B,它有m个结点, B的根为p,p的右子树结点个数为n,森林F中 第一棵树的结点个数是( )
A. n-1 B.n C. n+1 D. n+2
34
30.一棵有n个结点的二叉树,按层次从上到 下,同一层从左到右顺序存储在一维数组 A[1..n]中,则二叉树中第i个结点(i从1开 始用上述方法编号)的右孩子在数组A中 的位置是( )
A.A[2i](2i<=n) C.A[i-2] B.A[2i+1](2i+1<=n) D.条件不充分,无法确定
A.先序 B. 中序 D. 从根开始按层次遍历 C. 后序
5
二叉树的遍历
4. 二叉树的先序遍历和中序遍历如下: 先序 遍历:EFHIGJK;中序遍历: HFIEJKG 。 该二叉树根的右子树的根是( )
A.E C.G B. F D.H
6
二叉树的遍历
5. 某二叉树的先序和后序序列正好相反, 该二叉树一定是( )的二叉树。
22
18.设给定权值总数有n 个,其哈夫曼树的 结点总数为( )
A.不确定 B.2n C.2n+1 D.2n-1
18‘.有n 个叶子的哈夫曼树的结点总数为( )
A.不确定 B.2n C.2n+1 D.2n-1
23
19.有关二叉树下列说法正确的是( )
A.二叉树的度为2 B.一棵二叉树的度可以小于2 C.二叉树中至少有一个结点的度为2 D.二叉树中任何一个结点的度都为2
A. n在m的右方 C. n在m的左方 B. n是m的祖先 D. n是m的子孙
9
7.具有10个叶子结点的二叉树中有( 个度为2的结点。
A. 8 C. 10 B. 9 D. 11

10
8.树中所有结点的度的和等于所有结点数加 ( )。
A.0 C.-1 B.1 D.2
11
9.在线索化二叉树中,t所指结点没有左子树 的充要条件是( )
A.先序 C. 后序 B. 中序 D. 从根开始按层次遍历
27
23.树的后根遍历序列等同于该树对应的二叉 树的( ).
A. 先序序列 C. 后序序列 B. 中序序列
28
24.若二叉树采用二叉链表存储结构,要交换 其所有分支结点左、右子树的位置,利用 ( )遍历方法最合适。
A.前序 B.中序 C.后序 D.按层次
A.4 B.5 C.6 D. 7
14
12.一个具有1025个结点的二叉树的高h为 ( ).
A.11 C.11至1025之间 B.10 D.10至1024之间
15
13.设森林F中有三棵树,第一,第二,第三 棵树的结点个数分别为N1,N2和N3。与森 林F对应的二叉树根结点的右子树上的结点 个数是( )。
由于最后一层叶子数为489个,是奇数,说明有1个结点只有非空 左子树;而完全二叉树中不可能出现只有非空右子树的结点(0 个 )。
21
请注意叶子结点总数≠末层叶子数!
还应当加上第k-1层(靠右边)的0度结点个数。 分析:k层的489个叶子的父结点占上层的245个结点(489/2 ) 上层(k=9)右边的0度结点数还有29-1-245=11个! 所以, 全部叶子数=489(末层)+11(k-1层)=500个。 度为2的结点=叶子总数-1=499个。
29
25.在二叉树结点的先序序列,中序序列和后 序序列中,所有叶子结点的先后顺序( )
A.都不相同 B.完全相同 C.先序和中序相同,而与后序不同 D.中序和后序相同,而与先序不同
30
26.若X是二叉中序线索树中一个有左孩子的 结点,且X不为根,则x的前驱为( )
A.X的双亲 B.X的右子树中最左的结点 C.X的左子树中最右结点 D.X的左子树中最右叶结点
20
问: 设一棵完全二叉树具有1000个结点,则它有 489 个叶 子结点,有 488 个度为2的结点,有 1 个结点只有非空左子 树,有 0 个结点只有非空右子树。 答:易求出总层数和末层叶子数。总层数k=log2n+1 =10; 且前9层总结点数为29-1=511 (完全二叉树的前k-1层肯定是满的) 所以末层叶子数为1000-511=489个。
A. 空或只有一个结点 B.高度等于其结点数 C.任一结点无左孩子 D.任一结点无右孩子
7
二叉树的遍历
5’. 某二叉树的先序和后序序列正好相反,则 该二叉树一定是( )的二叉树。
A.所有的结点均无左孩子 B.所有的结点均无右孩子 C.只有一个叶子结点 D.是任意一棵二叉树
8
二叉树的遍历
6. 设n,m为一棵二叉树的两个结点,在中序 遍历时,n在m前的条件是( )
特 殊 二 叉 树
二 叉 树 的 性 质
二 叉 树 的 四 种 遍 历 方 法
二 叉 树 的 性 质
顺 序 存 储
二 叉 链 表
三 叉 链 表
线 索 链 表
① 满二叉树 ② 完全二叉树
① 遍历算法实现 ② 基于遍历的其他算法
二叉树的遍历
1. 一棵二叉树的先序遍历结果为ABCDEF, 中序遍历结果为CBAEDF,则后序遍历结 果为( )
《数据结构》(C语言版)
第6章 树和二叉树
计算机与信息工程学院 于江德
树形结构

相互 转换
二叉树
逻辑结构
存储结构
逻辑结构
存储结构
① ② ③ ④ ⑤ ⑥ ⑦
树的定义 基本术语 ADT定义 树的遍历: 先序遍历 后序遍历 层序遍历
双 亲 表 示 法
孩 子 兄 弟 表 示 法
孩 子 表 示 法
二 叉 树 的 定 义
35
31.设一棵完全二叉树具有1000个结点,则它 有( )个度为2的结点。
A.488 C.499 B.489 D.500
36
参考答案
1、ADCCB(5‘、C) 6、CBCBC 11、CCDDA 16、BBDBB 21、CCBCB 26、CACCD 31、C
37
你的问题?
Thanks!
第i层上的满 结点数为2i-1
另一法:可先求2度结点数,再由此得到叶子总数。 首先,k-2层的28-1(255)个结点肯定都是2度的(完全二叉) 另外,末层叶子(刚才已求出为489)所对应的双亲也是度=2, (共有489/2=244个)。 所以,全部2度结点数为255(k-2层)+244(k-1层)=499个; 总叶子数=2度结点数+1=500个。
A.t->left=NULL B. t->ltag=1 C. t->ltag=1且t->left=NULL D. 以上都不对
12
10. 由权值为9、2、5、7的四个叶子构造一 棵哈夫曼树,该树的带权路径长度为( )
A.23 B. 37 C. 44 D. 46
13
11.将有关二叉树的概念推广到三叉树,则 一棵有244个结点的完全三叉树的高度 ( )
31
27.引入二叉线索树的目的是( )
A.加快查找结点的前驱或后继的速度 B.为了能在二叉树中方便的进行插入与删除 C.为了能方便的找到双亲 D.使二叉树的遍历结果唯一
32
28. n个结点的线索二叉树上含有的线索数为 ( )
A.2n B. n - l C.n+l D.n
33
29.设F是一个森林,B是由F变换得的二叉树。 若F中有n个非终端结点,则B中右指针域 为空的结点有( )个。
相关文档
最新文档