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

合集下载

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

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

数据结构-习题-第六章-树和二叉树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)。

《数据结构》习题汇编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 ) ),则该二叉树的高度为()。

数据结构习题第6章

数据结构习题第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 的()。

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

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

第六章树和二叉树作业一、选择题(每题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 章树和二叉树1.选择题( 1)把一棵树变换为二叉树后,这棵二叉树的形态是()。

A.独一的B.有多种C.有多种,但根结点都没有左孩子D.有多种,但根结点都没有右孩子( 2)由 3 个结点能够结构出多少种不一样的二叉树?()A. 2 B . 3 C . 4 D. 5( 3)一棵完整二叉树上有1001 个结点,此中叶子结点的个数是()。

A. 250 B . 500 C . 254 D. 501( 4)一个拥有 1025 个结点的二叉树的高h 为()。

A. 11 B . 10 C.11 至 1025 之间 D .10 至 1024 之间( 5)深度为 h 的满 m叉树的第 k 层有()个结点。

(1=<k=<h)k-1B kCh-1 hA. m . m-1 . m D.m-1( 6)利用二叉链表储存树,则根结点的右指针是()。

A.指向最左孩子 B .指向最右孩子 C .空 D .非空( 7)对二叉树的结点从 1 开始进行连续编号,要求每个结点的编号大于其左、右孩子的编号,同一结点的左右孩子中,其左孩子的编号小于其右孩子的编号,可采纳()遍历实现编号。

A.先序 B. 中序 C. 后序 D.从根开始按层次遍历(8)若二叉树采纳二叉链表储存结构,要互换其全部分支结点左、右子树的地点,利用()遍历方法最适合。

A.前序B.中序C.后序D.按层次(9)在以下储存形式中,()不是树的储存形式?A.双亲表示法 B .孩子链表表示法 C .孩子兄弟表示法D.次序储存表示法( 10)一棵非空的二叉树的先序遍历序列与后序遍历序列正好相反,则该二叉树必定满足()。

A.全部的结点均无左孩子B.全部的结点均无右孩子C.只有一个叶子结点D.是随意一棵二叉树( 11)某二叉树的前序序列和后序序列正好相反,则该二叉树必定是()的二叉树。

A.空或只有一个结点B.任一结点无左子树C.高度等于其结点数 D .任一结点无右子树( 12)若 X 是二叉中序线索树中一个有左孩子的结点,且 X 不为根,则 X 的前驱为()。

数据结构习题与答案--树和二叉树

数据结构习题与答案--树和二叉树

第六章树和二叉树一、判断题( t )01、若二叉树用二叉链表作存贮结构,则在n个结点的二叉树链表中只有n—1个非空指针域。

( f )02、二叉树中每个结点的两棵子树的高度差等于1。

(t )03、二叉树中每个结点的两棵子树是有序的。

( f )04、二叉树中每个结点有两棵非空子树或有两棵空子树。

( f )05、二叉树中所有结点个数是2k-1-1,其中k是树的深度。

(f )06、二叉树中所有结点,如果不存在非空左子树,则不存在非空右子树。

( f )07、对于一棵非空二叉树,它的根结点作为第一层,则它的第i层上最多能有2i—1个结点。

(t )08、用二叉链表法存储包含n个结点的二叉树,结点的2n个指针区域中有n+1个为空指针。

(t)09、具有12个结点的完全二叉树有5个度为2的结点。

( f )10、二叉树中每个结点的关键字值大于其左非空子树(若存在的话)所有结点的关键字值,且小于其右非空子树(若存在的话)所有结点的关键字值。

( f )11、二叉树按某种顺序线索化后,任一结点均有指向其前驱和后续的线索。

( t )12、二叉树的先序遍历序列中,任意一个结点均处在其孩子结点的前面。

二、填空题01、由3个结点所构成的二叉树有_5_种形态。

02、一棵深度为6的满二叉树有____个分支结点和____个叶子。

03、一棵具有257个结点的完全二叉树,它的深度为____。

04、设一棵完全二叉树有700个结点,则共有____个叶子结点。

05、设一棵完全二叉树具有1000个结点,则此完全二叉树有____个叶子结点,有____个度为2的结点,有____个结点只有非空左子树,有____个结点只有非空右子树。

06、一棵含有n个结点的k叉树,可能达到的最大深度为____,最小深度为____。

07、二叉树的基本组成部分是:根(N)、左子树(L)和右子树(R)。

因而二叉树的遍历次序有六种。

最常用的是三种:前序法(即按N L R次序),后序法(即按LRN次序)和中序法(也称对称序法,即按L N R次序)。

第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个结点仅有一个孩子,则该二叉树的总结点数是多少。

《数据结构》习题集:第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.1(1)根结点a6.2三个结点的树的形态: 三个结点的二叉树的形态:(1) (1) (2) (4) (5)6.3 设树的结点数是n ,则n=n0+n1+n2+……+nm+ (1)设树的分支数为B ,有n=B+1n=1n1+2n2+……+mnm+1 (2)由(1)和(2)有:n0=n2+2n3+……+(m-1)nm+16.4(1) k i-1 (i 为层数)(2) (n-2)/k+1(3) (n-1)*k+i+1(4) (n-1)%k !=0; 其右兄弟的编号 n+16.5(1)顺序存储结构注:#为空结点6.6(1) 前序 ABDGCEFH(2) 中序 DGBAECHF(3) 后序 GDBEHFCA6.7(1) 空二叉树或任何结点均无左子树的非空二叉树(2) 空二叉树或任何结点均无右子树的非空二叉树(3) 空二叉树或只有根结点的二叉树6.8int height(bitree bt)// bt是以二叉链表为存储结构的二叉树,本算法求二叉树bt的高度{ int bl,br; // 局部变量,分别表示二叉树左、右子树的高度if (bt==null) return(0);else { bl=height(bt->lchild);br=height(bt->rchild);return(bl>br? bl+1: br+1); // 左右子树高度的大者加1(根) }}// 算法结束6.9void preorder(cbt[],int n,int i);// cbt是以完全二叉树形式存储的n个结点的二叉树,i是数// 组下标,初始调用时为1。

本算法以非递归形式前序遍历该二叉树{ int i=1,s[],top=0; // s是栈,栈中元素是二叉树结点在cbt中的序号 // top是栈顶指针,栈空时top=0if (n<=0) { printf(“输入错误”);exit(0);}while (i<=n ||top>0){ while(i<=n){visit(cbt[i]); // 访问根结点if (2*i+1<=n) s[++top]=2*i+1; //若右子树非空,其编号进栈i=2*i;// 先序访问左子树}if (top>0) i=s[top--]; // 退栈,先序访问右子树} // END OF while (i<=n ||top>0)}// 算法结束//以下是非完全二叉树顺序存储时的递归遍历算法,“虚结点”用‘*’表示void preorder(bt[],int n,int i);// bt是以完全二叉树形式存储的一维数组,n是数组元素个数。

数据结构考研试题精选及答案第6章 树和二叉树答案

数据结构考研试题精选及答案第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. 用顺序存储二叉树时,要按完全二叉树的形式存储,非完全二叉树存储时,要加“虚结点”。

第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.在完全二叉树中,若一个结点是叶结点,则它没()。

数据结构课后习题答案第六章

数据结构课后习题答案第六章
(1) 前序遍历序列和中序遍历序列相同。 (2) 中序遍历序列和后序遍历序列相同。 (3) 前序遍历序列和后序遍历序列相同。
欢迎下载
6
-
9.已知信息为“ ABCD BCD CB DB ACB ”,请按此信息构造哈夫曼树,求出每一字符的最优编码。 10. 己知中序线索二叉树采用二叉链表存储结构,链结点的构造为:
_,双分支结点的个数为 ____, 3 分支结点的个数为 ____, C 结点的双亲结点为 ____ ,其孩子结点为 ____。
5. 一棵深度为 h 的满 k 叉树有如下性质:第 h 层上的结点都是叶子结点,其余各层上的每个结点都有
k 棵非空子树。
如果按层次顺序(同层自左至右)从 1 开始对全部结点编号,则:
7.二叉树的遍历分为 ____ ,树与森林的遍历包括 ____。 8.一棵二叉树的第 i(i>=1) 层最多有 ____ 个结点;一棵有 n(n>0) 个结点的满二叉树共有 ____ 个叶子和 ____个非终端结点。
9.在一棵二叉树中,假定双分支结点数为 5 个,单分支结点数为 6 个,则叶子结点为 ____个。
A. 逻辑 B.逻辑和存储 C.物理 D.线性 19.由权值分别是 8,7, 2, 5 的叶子结点生成一棵哈夫曼树,它的带权路径长度为
A. 23 B. 37 C. 46 D. 43 20.设 T 是哈夫曼树,具有 5 个叶结点,树 T 的高度最高可以是 ( )。
A.2 B . 3 C. 4 D. 5
()
6.在叶子数目和权值相同的所有二叉树中,最优二叉树一定是完全二叉树。
()
7.由于二叉树中每个结点的度最大为 2,所以二叉树是一种特殊的树。 8.二叉树的前序遍历序列中,任意一个结点均处在其子树结点的前面。

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

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

第六章课后习题6、1、各层的结点数目是:K2、编号为n的结点的双亲结点是:<=(n-2)/k的最大整数3、编号为n的结点的第i个孩子结点编号是:k*(n-1)+1+i4、编号为n的结点有右兄弟的条件是:(n-1)能被k整除右兄弟的编号是:n+1.7、1、先序序列和中序序列相同:空二叉树或没有左子树的二叉树。

2、中序序列和后序序列相同:空二叉树或没有右子树的二叉树。

3、先序序列和后序序列相同:空二叉树或只有根的二叉树。

9、中序序列:BDCEAFHG和后序序列:DECBHGFA的二叉树为:AB FC GD E H先序序列:ABCDEFGH算法设计:3、typedef struct{int data[100];int top;}seqstack;seqstack *s;Perorder(char a[],int n){int i=1,count=1;s->top=-1;if(n==0)return(0);else{if(I<=n){s->top++;s->data[s->top]=a[I];}while(count<n){printf(“%c”,s->data[s->top]);count++;s->top--;if(s->data[s->top]);==a[i]){ printf(“%c”,s->data[s->top]);count++;s->top--;}if((2*i+1)<n){i=2*i;s->top++;s->data[s->top]=a[i+1];s->top++;s->data[s->top]=a[i];}else if(a*i<n){i=2*i;s->top++;s->data[s->top]=a[i];}else if(i/2%2==1)i=i/2/2+1;else i=i/2+1;}}}main(){char A[]=“kognwyuvb”;int n=strlen(A);s=(seqstack *)malloc(sizeof(seqstack)); printf(“\n”);Perorder(A,n);}。

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

一、选择题1 .已知一算术表达式的中缀形式为 A+B*C-D/E,后缀形式为ABC*+DE/-,其前缀形式为()④深度为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 ,…,T m ,每个集合又都是树,此时结点 T 称为Ti 的父结点,Ti 称为T 的子结点(1 < i < m )。

一个结点的子结点个数称为该结点的 ((3))。

二叉树与树是两个不同的概念,二叉树也是结点的有限集合,它((4 ))根结点。

可以把树的根结点的层数定义为1,其他结点的层数等于其父结点所在层数加上1。

令T 是一棵二叉树,Ki 和Kj 是T中子结点数小于 2的结点中的任意两个,它们所在的层数分别为入 Ki 和入Kj ,当关系式丨入Ki-入Kj | < 1 一定成立时,则称 T 为一棵((5))。

供选择的答案:(1 )⑷A.有0个或1个 B.有0个或多个 C.有且只有一个 D.有1个或1个以上C.允许叶结点相交 D .允许树枝结点相交 C.次数D.序C.平衡树D.完全树【上海海运学院 1999、2(5分)】10个度为2的结点,5个度为1的结点,则度为0的结点个数是()C . 15D .不确定 【北京工商大学 2001.7(3分)】第六章树和二叉树(2) A. 互不相交B.允许相交(3) A. 权 B.维数 (5)A. 丰满树B.查找树A . -A+B*C/DE -+A*BC/DE【北京航空航天大学 B. -A+B*CD/E-+*ABC/DED.1999 一、3(2 分)】2 .算术表达式a+b* (c+d/e )转为后缀表达式后为(A . ab+cde/*B . abcde/+*+C . abcde/*++ 3. 设有一表示算术表达式的二叉树(见下图),它所表示的算术表达式是( )【南京理工大学1999A. A*B+C/(D*E )+(F-G ) C. (A*B+C )/(D*E+4. 设树T 的度为4, 子数为()A . 5【南京理工大学(F-G )) 其中度为1 , B . 6 2000、20 (2分)】B. (A*B+C)/(D*E)+(F-G)D. A*B+C/D*E+F-G2, 3和4的结点个数分别为5. 在下述结论中,正确的是( ①只有一个结点的二叉树的度为交换;C . 7 (1.5分)】)【南京理工大学 1999 (1分)】0;②二叉树的度为2 ;③二叉树的左右子树可任意8.若一棵二叉树具有 B . 119 .在一棵三元树中度为 3 的结点数为 2 个,度为 2 的结点数为 1 个,度为 1 的结点数为 2 个,则度为 0 的结点数为( )个B .5C .6D .7 【哈尔滨工业大学 20012 ( 2 分)】10 .设森林 F 中有三棵树,第一,第二,第三棵树的结点个数分别为M1 ,M2 和 M3 。

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

【北方交通大学 2001 一、 16 ( 2 分)】A . M1B . M1+M2C . M3D . M2+M3 11 .具有 10 个叶结点的二叉树中有 ( )个度为 2 的结点, 【北京航空航天大学 20005( 2 分)】A .8B .9C .10D . ll12 .一棵完全二叉树上有 1001 个结点,其中叶子结点的个数是 ( 【)西安交通大学 1996A .4A . 250B . 500C . 254D . 505E .以上答案都不对13. 设给定权值总数有 n 个, 其哈夫曼树的结点总数为() 【福州大学 1998 一、5(2分)】A .不确定B . 2nC .2n+1D . 2n-114. 有 n 个叶子的哈夫曼树的结点总数为( A .不确定 15 .若度为 m 算所 1999 一、 A . n-1B . 2nC . 的哈夫曼树中,其叶结点个数为 2( 2 分)】B .?n/m ?-1 )。

【青岛大学 2002 二、 2n+1D . 2n-1 n ,则非叶结点的个数为()。

【中科院计C . e (n-1)/(m-1)u D . 印/(m-1) u -1E . e (n+1)/(m+1) u -1 16. 有关二叉树下列说法正确的是(A .二叉树的度为2C .二叉树中至少有一个结点的度为17.二叉树的第 I 层上最多含有结点数为 南京理工大学 2000 一、11 B .一棵二叉树的度可以小于 D .二叉树中任何一个结点的度都为)(1.5 2分)】 【中山大学 A . 2 I 18. 一个具有 分)】A . 111998 二、 7 (2 分)】【北京理工大学 2001 六、 5(2 分)】B .2 I-1 -1 C .2 I-1 D .1025 个结点的二叉树的高 h 为( )【南京理工大学2I -1199919 (2B .10C .1110 至 1024 19 •一棵二叉树高度为h,所有结点的度或为A . 2hB . 2h-1C . 2h+1一、11(1.5 分)】20. 对于有 n 个结点的二叉树 , 其高度为(A . nlog 2nB . log 2n 0,1025 之间 D . 或为 2 ,则这棵二叉树最少有 ( D . h+1 【南京理工大学)【武汉交通科技大学C .?log n?|+121. 一棵具有 n 个结点的完全二叉树的树高度(深度)是( 一、8 (2 分)】A . ?logn ?+1 22 .深度为 h 的满一、4(2 分)】 A . m k-1B .logn+1C .?logn ?m 叉树的第 k 层有( )个结点。

(1=<k=<h )B . m k -1C . m h-1 23 .在一棵高度为 k 的满二叉树中,结点总数为( 之间)结点 20011996 一、5 (4 分 )】D .不确定 )【南京理工大学 1996 D . logn-1北京航空航天大学 2000D . m h -1 )【北京工商大学 2001 一、 3 (32 (3 分 )】 1 ( 2 分)】B .2 kC .2 k -1K 的二叉树最大的结点数为(B .2 k-1C .25. 一棵树高为 K 的完全二叉树至少有( 分)】 A . 2k - 1 B. 2 k-1 - 126. 将有关二叉树的概念推广到三叉树,则一棵有A .4B .5 1.5 分)】27. 利用二叉链表存储树,A .指向最左孩子 28 .对二叉树的结点从 1 号,同一结点的左右孩子中, 历实现编号。

【北京理工大学 2000 一、 4 (2 分)】A .先序 B.中序C.后序29 .树的后根遍历序列等同于该树对应的二叉树的 ( 分)】A. 先序序列B. 中序序列30 .若二叉树采用二叉链表存储结构, 要交换其所有分支结点左、 遍历方法最合适。

A .前序B .中序( 2 分)】.在下列存储形式中,哪一个不是树的存储形式?(( 2 分)】A .双亲表示法.一棵二叉树的前序遍历序列为 、2 (2 分)】A . CABDEFG D . ADCFEG 33 .已知一棵二叉树的前序遍历结果为 结果为( )。

A . CBEFDAB . FEDCBA江大学 1999 四、2 ( 4 分)】34 .已知某二叉树的后序遍历序列是 ( )。

A . acbed 二、7 ( 1分)】35. 某二叉树中序序列为A .E,G,F,A,C,D,B 面的都不对【南京理工大学 2000 一、14 (1.5 分)】36. 上题的二叉树对应的森林包括多少棵树( )【南京理工大学 2000 一、 15 (1.5分)】A . lB .2C .3D .概念上是错误的分)】 A .2k-124 .高度为 A .2 k 2k -1)D .?log2 k?+1 )。

【山东大学 2001 二、3 (1 分)】D .2k-1-1 个结点【南京理工大学 1998 一、 C. 2k-1D. 2 k244 个结点的完全三叉树的高度()D . 7 【南京理工大学 2000则根结点的右指针是 B .指向最右孩子 开始进行连续编号,要求每个结点的编号大于其左、右孩子的编 其左孩子的编号小于其右孩子的编号,可采用()次序的遍北京理工大学 2000 C. 后序序列 右子树的位置,3123 C .6利用 ( ) C .后序D •按层次【北京航空航天大学1999)【北方交通大学 2001 B . ABCDEFG C . DACEFBGABCDEF, 中序遍历结果为CBAEDF, 则后序遍历的C . CBEDFAD .不定 , 它的前序遍历是 dabec, 中序遍历序列是 debac山东大学 2001B . decabC . deabcD . cedba)。

【青岛大学 2001 五、5 (2 分)】 C .空 D .非空 D. 从根开始按层次遍历 ).【北京理工大学 2001 六、6 (2B .孩子链表表示法C .孩子兄弟表示法D .顺序存储表示法 ABCDEFG ,它的中序遍历序列可能是()【北京32工业大学 2001A,B,C,D,E,F,G ,后序序列为 B . E,A,C,B,D,G,F B,D,C,A,F,G,E C . E,A,G,C,F,B,D则前序序列是:D .上37 .二叉树的先序遍历和中序遍历如下:先序遍历:EFHIGJK ;中序遍历: HFIEJKG 。

该二叉树根的右子树的根是:【北方交通大学2001 一、21(2 分)】A、EB、FC、G D 、H38 .将一棵树t 转换为孩子—兄弟链表表示的二叉树h ,则t 的后根序遍历是h 的A •前序遍历B •中序遍历C •后序遍历()【北京邮电大学2001 一、2 (2 分)】39.某二叉树T有n个结点,设按某种顺序对T中的每个结点进行编号,编号为1 ,2,…,n,且有如下性质:T中任一结点V,其编号等于左子树上的最小编号减1,而V的右子树的结点中,其最小编号等于V左子树上结点的最大编号加1。

这时是按()编号的。

A. 中序遍历序列B. 前序遍历序列C. 后序遍历序列D. 层次顺序【长沙铁道学院1998 三、1(2 分)】40 •下面的说法中正确的是().(1 )任何一棵二叉树的叶子结点在三种遍历中的相对次序不变;(2 )按二叉树定义,具有三个结点的二叉树共有 6 种。

相关文档
最新文档