数据结构及应用算法教程习题第六章 二叉树和树Word文档格式.docx

上传人:b****4 文档编号:6548922 上传时间:2023-05-06 格式:DOCX 页数:16 大小:25.62KB
下载 相关 举报
数据结构及应用算法教程习题第六章 二叉树和树Word文档格式.docx_第1页
第1页 / 共16页
数据结构及应用算法教程习题第六章 二叉树和树Word文档格式.docx_第2页
第2页 / 共16页
数据结构及应用算法教程习题第六章 二叉树和树Word文档格式.docx_第3页
第3页 / 共16页
数据结构及应用算法教程习题第六章 二叉树和树Word文档格式.docx_第4页
第4页 / 共16页
数据结构及应用算法教程习题第六章 二叉树和树Word文档格式.docx_第5页
第5页 / 共16页
数据结构及应用算法教程习题第六章 二叉树和树Word文档格式.docx_第6页
第6页 / 共16页
数据结构及应用算法教程习题第六章 二叉树和树Word文档格式.docx_第7页
第7页 / 共16页
数据结构及应用算法教程习题第六章 二叉树和树Word文档格式.docx_第8页
第8页 / 共16页
数据结构及应用算法教程习题第六章 二叉树和树Word文档格式.docx_第9页
第9页 / 共16页
数据结构及应用算法教程习题第六章 二叉树和树Word文档格式.docx_第10页
第10页 / 共16页
数据结构及应用算法教程习题第六章 二叉树和树Word文档格式.docx_第11页
第11页 / 共16页
数据结构及应用算法教程习题第六章 二叉树和树Word文档格式.docx_第12页
第12页 / 共16页
数据结构及应用算法教程习题第六章 二叉树和树Word文档格式.docx_第13页
第13页 / 共16页
数据结构及应用算法教程习题第六章 二叉树和树Word文档格式.docx_第14页
第14页 / 共16页
数据结构及应用算法教程习题第六章 二叉树和树Word文档格式.docx_第15页
第15页 / 共16页
数据结构及应用算法教程习题第六章 二叉树和树Word文档格式.docx_第16页
第16页 / 共16页
亲,该文档总共16页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

数据结构及应用算法教程习题第六章 二叉树和树Word文档格式.docx

《数据结构及应用算法教程习题第六章 二叉树和树Word文档格式.docx》由会员分享,可在线阅读,更多相关《数据结构及应用算法教程习题第六章 二叉树和树Word文档格式.docx(16页珍藏版)》请在冰点文库上搜索。

数据结构及应用算法教程习题第六章 二叉树和树Word文档格式.docx

A.2hB.2h-1C.2h+1D.h+1

16.对于有n个结点的二叉树,其高度为()

A.nlog2nB.log2nC.log2n|+1D.不确定

17.一棵具有n个结点的完全二叉树的树高度(深度)是()A.logn+1B.logn+1C.lognD.logn-1

18.深度为h的满m叉树的第k层有()个结点。

(1=<

k=<

h)A.mk-1B.mk-1C.mh-1D.mh-1

19.在一棵高度为k的满二叉树中,结点总数为()

A.2k-1B.2kC.2k-1D.log2k+1

20.高度为K的二叉树最大的结点数为()。

A.2kB.2k-1C.2k-1D.2k-1-1

21.一棵树高为K的完全二叉树至少有()个结点

A.2k–1B.2k-1–1C.2k-1D.2k

22.将有关二叉树的概念推广到三叉树,则一棵有244个结点的完全三叉树的高度()

A.4B.5C.6D.7

23.利用二叉链表存储树,则根结点的右指针是(C)。

A.指向最左孩子B.指向最右孩子C.空D.非空

24.对二叉树的结点从1开始进行连续编号,要求每个结点的编号大于其左、右孩子的编号,同一结点的左右孩子中,其左孩子的编号小于其右孩子的编号,可采用(D)次序的遍历实现编号。

A.先序B.中序C.后序D.从根开始按层次遍历

25.树的后根遍历序列等同于该树对应的二叉树的().

A.先序序列B.中序序列C.后序序列

27.在下列存储形式中,哪一个不是树的存储形式?

(D)

A.双亲表示法B.孩子链表表示法C.孩子兄弟表示法D.顺序存储表示法

28.一棵二叉树的前序遍历序列为ABCDEFG,它的中序遍历序列可能是()A.CABDEFGB.ABCDEFGC.DACEFBGD.ADCFEG

29.已知一棵二叉树的前序遍历结果为ABCDEF,中序遍历结果为CBAEDF,则后序遍历的结果为()。

A.CBEFDAB.FEDCBAC.CBEDFAD.不定

30.已知某二叉树的后序遍历序列是dabec,中序遍历序列是debac,它的前序遍历是()。

A.acbedB.decabC.deabcD.cedba

31.某二叉树中序序列为A,B,C,D,E,F,G,后序序列为B,D,C,A,F,G,E则前序序列是:

A.E,G,F,A,C,D,BB.E,A,C,B,D,G,FC.E,A,G,C,F,B,DD.上面的都不对

32.上题的二叉树对应的森林包括多少棵树()

A.lB.2C.3D.概念上是错误的

33.二叉树的先序遍历和中序遍历如下:

先序遍历:

EFHIGJK;

中序遍历:

HFIEJKG。

该二叉树根的右子树的根是:

A、EB、F C、G D、H

34.下面的说法中正确的是().

(1)任何一棵二叉树的叶子结点在三种遍历中的相对次序不变;

(2)按二叉树定义,具有三个结点的二叉树共有6种。

A.

(1)

(2)B.

(1)C.

(2)D.

(1)、

(2)都错

35.在二叉树结点的先序序列,中序序列和后序序列中,所有叶子结点的先后顺序()

A.都不相同  B.完全相同C.先序和中序相同,而与后序不同 

D.中序和后序相同,而与先序不同

36.某二叉树的前序序列和后序序列正好相反,则该二叉树一定是(C)的二叉树。

A.空或只有一个结点B.任一结点无左子树

C.高度等于其结点数D.任一结点无右子树

37.在完全二叉树中,若一个结点是叶结点,则它没()。

A.左子结点B.右子结点 

C.左子结点和右子结点D.左子结点,右子结点和兄弟结点

38.在下列情况中,可称为二叉树的是()

A.每个结点至多有两棵子树的树B.哈夫曼树

C.每个结点至多有两棵子树的有序树

D.每个结点只有一棵右子树E.以上参考答案都不对

39一棵左子树为空的二叉树在先序线索化后,其中空的链域的个数是:

()

A.不确定B.0C.1D.2

40.一棵左右子树均不空的二叉树在先序线索化后,其中空的链域的个数是:

()。

A.0B.1C.2D.不确定

41.引入二叉线索树的目的是(A)

A.加快查找结点的前驱或后继的速度

B.为了能在二叉树中方便的进行插入与删除

C.为了能方便的找到双亲D.使二叉树的遍历结果唯一

42.线索二叉树是一种(C)结构。

A.逻辑B.逻辑和存储C.物理D.线性

43.n个结点的线索二叉树上含有的线索数为()

A.2nB.n-lC.n+lD.n

45.如果T2是由有序树T转换而来的二叉树,那么T中结点的后序就是T2中结点的()。

A.先序B.中序C.后序D.层次序

47.由3个结点可以构造出多少种不同的二叉树?

A.2B.3C.4D.5

49.下述编码中哪一个不是前缀码(B)。

A.(00,01,10,11)B.(0,1,00,11)

C.(0,10,110,111)D.(1,01,000,001)

50.下面几个符号串编码集合中,不是前缀编码的是(B)。

A.{0,10,110,1111}B.{11,10,001,101,0001}C.{00,010,0110,1000}D.{b,c,aa,ac,aba,abb,abc}

51.当一棵有n个结点的二叉树按层次从上到下,同层次从左到右将数据存放在一维数组A[l..n]中时,数组中第i个结点的左孩子为()

A.A[2i](2i=<

n)B.A[2i+1](2i+1=<

n)C.A[i/2]D.无法确定

52.一棵有n个结点的二叉树,按层次从上到下,同一层从左到右顺序存储在一维数组A[1..n]中,则二叉树中第i个结点(i从1开始用上述方法编号)的右孩子在数组A中的位置是()

A.A[2i](2i<

=n)B.A[2i+1](2i+1<

=n)

C.A[i-2]D.条件不充分,无法确定

53.从下列有关树的叙述中,选出5条正确的叙述(共5分)()

A.二叉树中每个结点有两个子结点,而树无此限制,因此二叉树是树的特殊情况。

B.当K≥1时高度为K的二叉树至多有2k-1个结点。

C.用树的前序周游和中序周游可以导出树的后序周游。

D.线索二叉树的优点是便于在中序下查找前驱结点和后继结点。

E.将一棵树转换成二叉树后,根结点没有左子树。

F.一棵含有N个结点的完全二叉树,它的高度是LOG2N+1。

G.在二叉树中插入结点,该二叉树便不再是二叉树。

H.采用二叉树链表作树的存储结构,树的前序周游和其相应的二叉树的前序周游的结果是一样的。

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

J.用一维数组存储二叉树时,总是以前序周游存储结点。

二、填空题

1.二叉树由_

(1)__,__

(2)_,_(3)__三个基本单元组成。

2.树在计算机内的表示方式有_

(1)__,_

(2)__,_(3)__。

3.在二叉树中,指针p所指结点为叶子结点的条件是______。

5.二叉树中某一结点左子树的深度减去右子树的深度称为该结点的____。

6.具有256个结点的完全二叉树的深度为______。

7.已知一棵度为3的树有2个度为1的结点,3个度为2的结点,4个度为3的结点,则该树有______个叶子结点。

8.深度为k的完全二叉树至少有___

(1)____个结点,至多有___

(2)____个结点。

9.在顺序存储的二叉树中,编号为i和j的两个结点处在同一层的条件是______。

10.在完全二叉树中,编号为i和j的两个结点处于同一层的条件是______。

11.一棵有n个结点的满二叉树有__

(1)_个度为1的结点、有__

(2)_个分支(非终端)结点和__(3)_个叶子,该满二叉树的深度为_(4)__。

12.假设根结点的层数为1,具有n个结点的二叉树的最大高度是______。

13.在一棵二叉树中,度为零的结点的个数为N0,度为2的结点的个数为N2,则有N0=______

14.设只含根结点的二叉树的高度为0,则高度为k的二叉树的最大结点数为______,最小结点数为______。

15.设有N个结点的完全二叉树顺序存放在向量A[1:

N]中,其下标值最大的分支结点为______。

16.高度为K的完全二叉树至少有______个叶子结点。

17.已知二叉树有50个叶子结点,则该二叉树的总结点数至少是______。

18.一个有2001个结点的完全二叉树的高度为______。

19.设F是由T1,T2,T3三棵树组成的森林,与F对应的二叉树为B,已知T1,T2,T3的结点数分别为n1,n2和n3则二叉树B的左子树中有__

(1)_个结点,右子树中有_

(2)__个结点。

20.一个深度为k的,具有最少结点数的完全二叉树按层次,(同层次从左到右)用自然数依此对结点编号,则编号最小的叶子的序号是__

(1)_;

编号是i的结点所在的层次号是_

(2)__(根所在的层次号规定为1层)。

21.如某二叉树有20个叶子结点,有30个结点仅有一个孩子,则该二叉树的总结点数为______。

22.如果结点A有3个兄弟,而且B是A的双亲,则B的度是______。

23.高度为h的2-3树中叶子结点的数目至多为______。

26.完全二叉树中,结点个数为n,则编号最大的分支结点的编号为______。

24.设一棵完全二叉树叶子结点数为k,最后一层结点数>

2,则该二叉树的高度为______。

25.对于一个具有n个结点的二元树,当它为一棵_

(1)_二元树时具有最小高度,当它为一棵_

(2)_时,具有最大高度。

26.具有N个结点的二叉树,采用二叉链表存储,共有______个空链域。

27.含4个度为2的结点和5个叶子结点的二叉树,可有______个度为1的结点。

28.一棵树T中,包括一个度为1的结点,两个度为2的结点,三个度为3的结点,四个度为4的结点和若干叶子结点,则T的叶结点数为______。

29.每一棵树都能唯一的转换为它所对应的二叉树。

若已知一棵二叉树的前序序列是BEFCGDH,对称序列是FEBGCHD,则它的后序序列是_

(1)__。

设上述二叉树是由某棵树转换而成,则该树的先根次序序列是_

(2)__。

30.先根次序周游树林正好等同于按_

(1)__周游对应的二叉树,后根次序周游树林正好等同于按__

(2)_周游对应的二叉树。

31.二叉树结点的对称序序列为A,B,C,D,E,F,G,后序序列为B,D,C,A,F,G,E,则该二叉树结点的前序序列为_

(1)__,则该二叉树对应的树林包括_

(2)__棵树。

32.二叉树的先序序列和中序序列相同的条件是______。

33.已知一棵二叉树的前序序列为abdecfhg,中序序列为dbeahfcg,则该二叉树的根为_

(1)__,左子树中有_

(2)__,右子树中有_(3)__。

34.设二叉树中每个结点均用一个字母表示,若一个结点的左子树或右子树为空,用.表示,现前序遍历二叉树,访问的结点的序列为ABD.G...CE.H..F..,则中序遍历二叉树时,访问的结点序列为_

(1)__;

后序遍历二叉树时,访问的结点序列为_

(2)__。

35.现有按中序遍历二叉树的结果为abc,问有_

(1)__种不同的二叉树可以得到这一遍历结果,这些二叉树分别是_

(2)__。

36.一个无序序列可以通过构造一棵______树而变成一个有序序列,构造树的过程即为对无序序列进行排序的过程。

37.利用树的孩子兄弟表示法存储,可以将一棵树转换为______。

38.若一个二叉树的叶子结点是某子树的中序遍历序列中的最后一个结点,则它必是该子树的______序列中的最后一个结点。

39.先根次序周游树林正好等同于按______周游对应的二叉树;

后根次序周游树林正好等同于______周游对应的二叉树。

40.在一棵存储结构为三叉链表的二叉树中,若有一个结点是它的双亲的左子女,且它的双亲有右子女,则这个结点在后序遍历中的后继结点是______。

41.一棵左子树为空的二叉树在先序线索化后,其中的空链域的个数为:

______。

42.设一棵后序线索树的高是50,结点x是树中的一个结点,其双亲是结点y,y的右子树高度是31,x是y的左孩子。

则确定x的后继最多需经过______中间结点(不含后继及x本身)

43.线索二元树的左线索指向其______,右线索指向其______。

45.哈夫曼树是______。

46.若以{4,5,6,7,8}作为叶子结点的权值构造哈夫曼树,则其带权路径长度是______。

47.有一份电文中共使用6个字符:

a,b,c,d,e,f,它们的出现频率依次为2,3,4,7,8,9,试构造一棵哈夫曼树,则其加权路径长度WPL为_

(1)__,字符c的编码是_

(2)__。

三、应用题

1.从概念上讲,树,森林和二叉树是三种不同的数据结构,将树,森林转化为二叉树的基本目的是什么,并指出树和二叉树的主要区别。

2.树和二叉树之间有什么样的区别与联系?

5.有n个结点并且其高度为n的二叉树的数目是多少?

6.已知完全二叉树的第七层有10个叶子结点,则整个二叉树的结点数最多是多少?

7.任意一个有n个结点的二叉树,已知它有m个叶子结点,试证明非叶子结点有(m-1)个度为2,其余度为1。

8.给定K(K>

=1),对一棵含有N个结点的K叉树(N>0)、请讨论其可能的最大高度和最小高度。

9.一棵共有n个结点的树,其中所有分支结点的度均为K,求该树中叶子结点的个数。

12.若一棵完全二叉树中叶子结点的个数为n,且最底层结点数≧2,则此二叉树的深度H=?

13.已知完全二叉树有30个结点,则整个二叉树有多少个度为0的结点?

15.试求有n个叶结点的非满的完全二叉树的高度;

16.假设高度为H的二叉树上只有度为0和度为2的结点,问此类二叉树中的结点数可能达到的最大值和最小值各为多少?

20.一棵二叉树的先序、中序、后序序列如下,其中一部分未标出,请构造出该二叉树。

先序序列:

_ABCDE_FGHI_JK

中序序列:

CB_DEFAHJKIG

后序序列:

_CEFDBKJIHGA

21.M叉树的前序和后序遍历分别与由它转换成的二叉树的哪种遍历相对应?

26.一棵左右子树均不空的二叉树在先序线索化后,其空指针域数为多少?

62.二叉树T的中序遍历序列和层次遍历序列分别是BAFDGCE和ABCDEFG,试画出该二叉树。

参考答案

一、选择题

1.D2.D3.D4.A5.CACAC6.B7.D8.B9.D10.D11.C12.B13.C14.C15.B16.D

17.A18.A19.C20.C21.C22.C23.C24.C25.B26.C27.D28.B29.A30.D31.B32.B33.C34.B35.B36.C37.C38.B39.D40.B41.A42.C43.C44.D45.B46.A47.D48.D49.B50.B51.D52.D53.CDFHI

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.9

7.12

8.

(1)2k-1

(2)2k-1(3)H=log2N+1

9.用顺序存储二叉树时,要按完全二叉树的形式存储,非完全二叉树存储时,要加“虚结点”。

设编号为i和j的结点在顺序存储中的下标为s和t,则结点i和j在同一层上的条件是log2s=log2t。

10.log2i=log2j

11.

(1)0

(2)(n-1)/2(3)(n+1)/2(4)log2n+1

12.n

13.N2+1

14.

(1)2K+1-1

(2)k+1

15.N/2

16.2k-2

17.99

18.11

19.

(1)n1-1

(2)n2+n3

20.

(1)2k-2+1(第k层1个结点,总结点个数是2H-1,其双亲是2H-1/2=2k-2)

(2)log2i+121.69

22.4

23.3h-1

24.log2k+1

25.

(1)完全二叉树

(2)单枝树,树中任一结点(除最后一个结点是叶子外),只有左子女或只有右子女。

26.N+1

27.0至多个。

任意二叉树,度为1的结点个数没限制。

只有完全二叉树,度为1的结点个数才至多为1。

28.21

29.

(1)FEGHDCB

(2)BEF(该二叉树转换成森林,含三棵树,其第一棵树的先根次序是BEF)

30.

(1)先序

(2)中序

31.

(1)EACBDGF

(2)2

32.任何结点至多只有右子女的二叉树。

33.

(1)a

(2)dbe(3)hfcg

34.

(1).D.G.B.A.E.H.C.F.

(2)...GD.B...HE..FCA

35.

(1)5

(2)略

36.二叉排序树37.二叉树

38.前序

39.

(1)先根次序

(2)中根次序

40.双亲的右子树中最左下的叶子结点

41.2

42.31(x的后继是经x的双亲y的右子树中最左下的叶结点)

43.

(1)前驱

(2)后继

44.

(1)1

(2)y^.lchild(3)0(4)x(5)1(6)y(7)x(本题按中序线索化)

45.带权路径长度最小的二叉树,又称最优二叉树

46.69

47.

(1)80

(2)001(不唯一)

48.

(1)p->

rchild

(2)p->

lchild(3)p->

lchild(4)ADDQ(Q,p->

lchild)(5)ADDQ(Q,p->

rchild)

49.

(1)top++

(2)stack[top]=p->

rchild(3)top++(4)stack[top]=p->

lchild

50.

(1)p=p->

lchild//沿左子树向下

(2)p=p->

rchild

51.

(1)0

(2)hl>

hr(3)hr=hl

52.

(1)*ppos//根结点

(2)rpos=ipos(3)rpos–ipos(4)ipos(5)ppos+1

53.

(1)tree->

lchild

(2)null(3)pre->

(4)pre->

rtag=1(5)pre->

right=tree;

(6)tree->

right(注(4)和(5)顺序可换)

 

1.树的孩子兄弟链表表示法和二叉树二叉链表表示法,本质是一样的,只是解释不同,也就是说树(树是森林的特例,即森林中只有一棵树的特殊情况)可用二叉树唯一表示,并可使用二叉树的一些算法去解决树和森林中的问题。

树和二叉树的区别有三:

一是二叉树的度至多为2,树无此限制;

二是二叉树有左右子树之分,即使在只有一个分枝的情况下,也必须指出是左子树还是右子树,树无此限制;

三是二叉树允许为空,树一般不允许为空(个别书上允许为空)。

2.树和二叉树逻辑上都是树形结构,区别有以上题1所述三点。

二叉树不是树的特例。

3.线性表属于约束最强的线性结构,在非空线性表中,只有一个“第一个”元素,也只有一个“最后一个”元素;

除第一个元素外,每个元素有唯一前驱;

除最后一个元素外,每个元素有唯一后继。

树是一种层次结构,有且只有一个根结点,每个结点可以有多个子女,但只有一个双亲(根无双亲),从这个意义上说存在一(双亲)对多(子女)的关系。

广义表中的元素既可以是原子,也可以是子表,子表可以为它表共享。

从表中套表意义上说,广义表也是层次结构。

从逻辑上讲,树和广义表均属非线性结构。

但在以下意义上,又蜕变为线性结构。

如度为1的树,以及广义表中的元素都是原

子时。

另外,广义表从元素之间的关系可看成前驱和后继,也符

合线性表,但这时元素有原子,也有子表,即元素并不属于同一

数据对象。

4.方法有二。

一是对该算术表达式(二叉树)进行后序遍历,

得到表达式的后序遍历序列,再按后缀表达式求值;

二是递归

求出左子树表达式的值,再递归求出右子树表达式的值,最后

按根结点运算符(+、-、*、/等)进行最后求值。

第5题图

5.2n-1(本题等价于高度为n的满二叉树有多少叶子结点,从根结点到各叶子结点的单枝树是不同的二叉树。

6.235。

由于本题求二叉树的结点数最多是多少,第7层共有27-1=64个结点,已知有10个叶子,其余54个结点均为分支结点。

它在第八层上有108个叶子结点。

所以该二叉树的结点数最多可达(27-1+108)=235。

(注意;

本题并未明说完全二叉树的高度,但根据题意,只能8层。

7.证明:

设度为1和2的结点数是n1和n2,则二叉树结点数n为n=m+n1+n2…………

(1)

由于二叉树根结点没有分枝所指,度为1和2的结点各有1个和2个分枝,度为0

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 解决方案 > 学习计划

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2