树与二叉树复习试题

合集下载

第五章树与二叉树必会题

第五章树与二叉树必会题

第五章树和二叉树必会题一.填空1. 树结构体现了数据元素间一对多的关系。

在树中除根结点外,其余结点有且仅有一个双亲;除叶子结点外,其余结点可能有多个孩子。

2. 树的遍历方法主要有先序遍历、中序遍历和后序遍历。

3. 树中某结点在第k层,则该结点的子树的根在k+1层。

4. 二叉树的第i层上至多有2i-1个结点。

5. 深度为h的二叉树至多有2h-1个结点。

6. 完全二叉树中结点间编号的关系:若某结点的编号为i,若有双亲,则其双亲的编号为i/2;若有左孩子,则其左孩子的编号为i*2;若有右孩子,则其右孩子的编号为i*2+1。

7. 把一棵树转换为二叉树后,这棵二叉树的形态是唯一的。

8. 完全二叉树就是在同高度的满二叉树的最大层上从右向左连续删除若干结点所构成。

9. 任意一棵哈夫曼树的带权路径长度都等于其所有非叶子结点的权值之和。

10. 树中的结点数比边数多1。

11. 二叉树可以采用顺序存储结构,也可以采用链式存储结构。

12. 哈夫曼树是带权路径长度最短的树。

13. 已知二叉树先根遍历的序列为“CDHAFEGB”, 中根遍历的序列为“HDFAECBG”, 则后根遍历的序列为“_HFEADBGC_”。

14. 已知完全二叉树有1024个结点, 则该二叉树的深度为__11___。

15. 已知一颗哈夫曼树有4个叶子结点,则该树一共有7个结点。

16. 设一棵树用括号表示法记作A(C,D(E,F,G),H(I,J)),则该树有9个结点,树的深度为3,树的度为3。

17. 若用二叉链表存储二叉树,则有n个结点的二叉树共有2n个指针域,其中有n-1个指针域非空,n+1个指针域为空。

18. 设用于通信的电文仅由8个字母组成,字母在电文中出现的频率分别为7、19、2、6、32、3、21、10,根据这些频率作为权值构造哈夫曼树,则这棵哈夫曼树的高度为6。

二.判断题1. 二叉树的后序遍历序列中,任意一个结点均处在其孩子结点的后面。

(√)2. 二叉树是度为2的有序树。

数据结构:树和二叉树

数据结构:树和二叉树

C 唯一性不确定。
D 唯一性与原因的边的权数有关。
14、将递归算法转换成对应的非递归算法时,通常需要使用__________。 A栈 B 队列 C 链表 D树 15 、设二维数组 A[m][n], 每个数组元素占用 K 个存储单元 , 第一个数组元素的存储地址是 Loc(a[0][0]),求按行优先顺序存放的数组元素 a[i][j](0<=i<=m-1,0<=j<=n-1)的存储地址为______。 A,Loc(a[0][0]+[(i-1)*n+j-1]*k B,Loc(a[0][0])+[i*n+j]*k C,Loc(a[0][0])+[j*m+i]*k D,Loc(a[0][0])+[(j-1)*m+i-1]*k 16 、设二维数组 A[m][n], 每个数组元素占用 k 个存储单元 , 第一个数组元素的存储地址是 Loc(a[0][0]),求按列优先顺序存放的数组元素 a[i][j](0<=i<=m-1,0<=j<=n-1)的存储地址为______。 A,Loc(a[0][0])+[(i-1)*n+j-1]*k B,Loc(a[0][0])+[i*n+j]*k C,Loc(a[0][0])+[j*m+i]*k D,Loc(a[0][0])+[(j-1)*m+i-1]*k 17 、设二维数组 A[6][10], 每个数组元素占用 4 个存储单元 , 若按行优先顺序存放的数组元 素,a[0][0]的存储地址为 860,则 a[3][5]的存储地址是______。 A,1000 B,860 C,1140 D,1200 18、设二维数组 A[6][10],每个数组元素占用 4 个存储单元,若按行优先顺序存放的数组元素 a[3][5]的存储地址为 1000,则 a[0][0]的存储地址是______。 A,872 B,860 C,868 D,864 19、若将 n 阶上三角矩阵 A 按列优先顺序压缩存放在一维数组 B[1..n(n+1)/2]中,第一个非零 元素 a1,1 存于 B[0]中,则应存放到 B[k]中的非零元素 ai,j(1<=i<=n,1<=j<=i)的下标 i、j 与 k 的对 应关系是______。 A,i(i+1)/2+j B,i(i-1)/2+j-1 C,j(j+1)/2+i D,j(j-1)/2+i-1 20、若将 n 阶下三角矩阵 A 按列优先顺序压缩存放在一维数组 B[1..n(n+1)/2]中,第一个非零 元素 a1,1 存于 B[0]中,则应存放到 B[k]中的非零元素 ai,j(1<=i<=n,1<=j<=i)的下标 i、j 与 k 的对 应关系是______。 A,j(2n-j+1)/2+i-j B,(j-1)(2n-j+1)/2+i-j C,i(2n-i+1)/2+j-i D,i(2n-i+2)/2 A 便于进行矩阵运算 B 便于输入和输出 C 节省存储空间 度 22、稀疏矩阵压缩后,必会失去______功能。 A 顺序存储 B 随机存取 C 输入输出 D 以上都不对

第6章 树和二叉树练习题及答案

第6章 树和二叉树练习题及答案

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

(×)2.二叉树中每个结点的两棵子树的高度差等于1。

(√)3.二叉树中每个结点的两棵子树是有序的。

(×)4.二叉树中每个结点有两棵非空子树或有两棵空子树。

(×)5.二叉树中所有结点个数是2k-1-1,其中k是树的深度。

(应2i-1)(×)6.二叉树中所有结点,如果不存在非空左子树,则不存在非空右子树。

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

(应2i-1)(√)(√)( )10( )11( )12(√)(√)14(√)15(╳)16(√)(√)(√)(╳)12.345.1答:20所以有1个非空左子树。

完全二叉树的特点决定不可能有左空右不空的情况,所以非空右子树数=0.6.一棵含有n个结点的k叉树,可能达到的最大深度为n,最小深度为2。

7.若已知一棵二叉树的前序序列是BEFCGDH,中序序列是FEBGCHD,则它的后序序列必是FEGHDCB。

8.在二叉树中,指针p所指结点为叶子结点的条件是_p->lchild==null&&p->rchlid==null?。

三、选择题1.某二叉树结点的中序序列为A、B、C、D、E、F、G,后序序列为B、D、C、A、F、G、E,则其左子树中结点数目为(C)A)3 B)2 C)4D)52.二叉树是非线性数据结构,所以(C)。

A、它不能用顺序存储结构存储;B、它不能用链式存储结构存储;C、顺序存储结构和链式存储结构都能存储;D、顺序存储结构和链式存储结构都不能使用3.具有n(n>0)个结点的完全二叉树的深度为(C)。

(A)?log2(n)?(B)?log2(n)?(C)?log2(n)?+1(D)?log2(n)+1?4.把一棵树转换为二叉树后,这棵二叉树的形态是(A)。

第五章树和二叉树习题

第五章树和二叉树习题

第五章树和二叉树一.选择题1.在一棵度为3的树中,度为3的结点数为2个,度为2的结点数为1个,度为1的结点数为2个,那么度为0的结点数为()A.4个B.5个C.6个D.7个2.某二叉树结点的中序序列为a、b、c、d、e、f、g,后序序列为b、d、c、a、f、g、e,则其左子树中结点数目为()A.3 B.2 C.4 D.53.设森林F中有三棵树,第一、第二和第三棵树的结点个数分别为M1、M2和M3。

与森林F对应的二叉树根结点的左子树上的结点个数是()A.M1 B.M1+M2 C.M3 D.M2+M34。

对于一棵具有n个结点、度为4的树来说,()A.树的高度至多是n-3 B.树的高度至多是n-3C.第i 层上至多有4*(i-1)个结点D.至少在某一层上正好有4个结点5.在下列存储结构中,()不是树的存储形式A.双亲表示法B.孩子链表示法C.孩子兄弟链表示法D.顺序存储表示法6.二叉树若用顺序方法存储,则下列4种运算中的()最容易实现。

A.先序遍历二叉树B.判断两个指定结点是不是在同一层上C.层次遍历二叉树D.根据结点的值查找其存储位置7.一个完全二叉树上有1001个结点,其中叶子结点的个数是()A.250 B.501 C.254 D。

5058.在高度为h的完全二叉树中()A.度为0的结点都在第h 层上B.第I (1<=i<=h)层上结点都是度为2的结点C.第I (1<=i<=h-1)层上有2i-1个结点D.不存在度为1的结点9.若一刻二叉树具有10个度为2的节点,5个度为1的结点,则度为0的结点个数是()A.9 B.11 C.15 D.不确定10.若二叉树的中序遍历序列是abcdef,且c为根结点,则()A.结点c有两个孩子B.二叉树有两个度为0的结点C.二叉树的高度为5 D.以上都不对11.在任何一棵二叉树中,如果结点a 有左孩子b、右孩子c,则在结点的先序序列、中序序列、后序序列中,()A.结点b一定在结点a的前面B.结点a一定在结点c的前面C.结点b一定在结点c的前面D.结点a一定在结点b的前面12.若二叉树采用二叉链表存储结构,要交换其所有分支结点左、右子树的位置,利用( )遍历方法最合适。

第六章:树和二叉树复习题

第六章:树和二叉树复习题

第六章:树和二叉树复习题第六章:树和二叉树复习题一、选择题1、有一“遗传”关系,设x是y的父亲,则x可以把它的属性遗传给y,表示该遗传关系最适合的数据结构是()A、向量B、树C、图D、二叉树2、树最适合用来表示()A、有序数据元素B、元素之间具有分支层次关系的数据C、无序数据元素D、元素之间无联系的数据3、树B的层号表示为1a,2b,3d,3e,2c,对应于下面选择的()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开始连续编号,要求每个结点的编号大于其左、右孩子的编号,同一结点的左右孩子中,其左孩子的编号小于其右孩子的编号,则可采用()次序的遍历实现二叉树的结点编号。

A、先序B、中序C、后序D、从根开始按层次遍历5、按照二叉树的定义,具有3个结点的二叉树有()种。

A、3B、4C、5D、106、在一棵有n个结点的二叉树中,若度为2的结点数为n2,度为1的结点数为n1,度为0的结点数为n0,则数的最大高度为(),其叶结点数为();树的最小高度为(),其叶结点数为();若采用链表存储结构,则有()个空链域。

A、n/2B、[log2n]+1C、log2nD、nE、n0+n1+n2F、n1+n2G、n2+1 H、1 I、n+1 J、n1 K、n2L、n1+17、对一棵满二叉树,m个树叶,n个结点,深度为h,则()A、n=m+hB、h+m=2nC、m=h-1D、n=2h-18、设高度为h的二叉树中只有度为0和度为2的结点,则此类二叉树中所包含的结点数至少为(),至多为()。

A、2hB、2h-1C、2h-1D、2h-19、在一棵二叉树上第5层的结点数最多为()(假设根结点的层数为0)A、8B、16C、15D、3210、深度为5的二叉树至多有()个结点。

A、16B、32C、31D、1011、一棵有124个叶结点的完全二叉树,最多有()个结点A、247B、248C、249D、25012、含有129个叶子结点的完全二叉树,最少有()个结点A、254B、255C、256D、25713、假定有一棵二叉树,双分支结点数为15,单分支结点数为30,则叶子结点数为()个。

树和二叉树(习题及作业)

树和二叉树(习题及作业)

• 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个字母设计哈夫曼编码; • 计算其带权路径长度

习题5 树和二叉树

习题5  树和二叉树

习题5 树和二叉树一、选择题:1.在具有n个结点的完全二叉树中,结点i(i>1)的父结点是()A.2i B.不存在C.2i+1 D.⌊ i/2⌋2. 有m个叶结点的哈夫曼树所具有的结点数为()A.m B.m+1 C.2m D.2m - 13. 下列陈述中正确的()A.二叉树是度为2的有序树B.二叉树中结点只有一个孩子时无左右之分C.二叉树中必有度为2的结点D.二叉树中最多只有两棵子树,并且有左右之分4. 以二叉链表作为二叉树的存储结构,在具有n个结点的二叉链表中(n>0),空链域的个数为()A.2n - 1 B.n - 1 C.n + 1 D.2n + 15. 将一棵有100个结点的完全二叉树从上到下,从左到右依次对结点进行编号,根结点的编号为1,则编号为49的结点的左孩子编号为()A.99 B.98 C.50 D.486. 在一棵具有五层的满二叉树中,结点总数为()A.31 B.32 C.33 D.167. 在一棵二叉树中,第5层上的结点数最多为()A.8 B.15 C.16 D.328. 由二叉树的()遍历,可以惟一确定一棵二叉树A.前序和后序B.前序和中序C.后序D.中序9. 具有35个结点的完全二叉树的深度为()。

A.5B.6C.7D.810. 已知一棵二叉树的先序遍历序列为EFHIGJK,中序遍历序列为HFIEJGK,则该二叉树根的右子树的根是()。

A.E B. F C. G D. J11. 由4个结点构造出的不同的二叉树个数共有()。

A.8 B. 10 C.12 D.1412. 在完全二叉树中,如果一个结点是叶子结点,则它没有()。

A.左孩子结点B. 右孩子结点C.左、右孩子结点D.左、右孩子结点和兄弟结点13. 深度为6的二叉树最多有()个结点。

A.64 B.63 C.32 D.3114. 二叉树使用二叉链表存储,若p指针指向二叉树的一个结点,当p->lchild=NULL时,则()。

计算机专业基础综合数据结构(树和二叉树)历年真题试卷汇编4

计算机专业基础综合数据结构(树和二叉树)历年真题试卷汇编4

计算机专业基础综合数据结构(树和二叉树)历年真题试卷汇编4(总分:74.00,做题时间:90分钟)一、综合题(总题数:35,分数:74.00)1.(1)试找出满足下列条件的二叉树:1)先序序列与后序序列相同2)中序序列与后序序列相同3)先序序列与中序序列相同4)中序序列与层次遍历序列相同(2)已知一棵二叉树的中序序列和后序序列分别为DBEAFIHCG和DEBHIFGCA,画出这棵二叉树。

【东北大学1999六(4分)】【东南大学2000一、4(6分)】(分数:2.00)__________________________________________________________________________________________ 正确答案:(正确答案:(1)先序遍历二叉树的顺序是“根一左子树一右子树”,中序遍历“左子树一根一右子树”,后序遍历顺序是“左子树一右子树一根”,根据以上原则,本题解答如下:1)若先序序列与后序序列相同,则或为空树,或为只有根结点的二叉树。

2)若中序序列与后序序列相同,则或为空树,或为任一结点至多只有左子树的二叉树。

3)若先序序列与中序序列相同,则或为空树,或为任一结点至多只有右子树的二叉树。

4)若中序序列与层次遍历序列相同,则或为空树,或为任一结点至多只有右子树的二叉树。

(2)由中序序列DBEAFIHCG和后序序列DEBHIFGCA)解析:2.分别给出满足下列条件的二叉树。

(1)前序和中序遍历结果相同;(2)前序和中序遍历结果不相同而是相反;(3)中序和后序遍历结果相同;(4)前序和后序遍历结果相同。

【四川大学2004】【烟台大学2007四、2(8分)】(分数:2.00)__________________________________________________________________________________________ 正确答案:(正确答案:空二叉树满足题目要求,若二叉树非空,则(1)前序和中序遍历结果相同的二叉树是任一结点无左子女; (2)前序和中序遍历结果不相同而是相反的二叉树是任一结点无右子女; (3)中序和后序遍历结果相同的二叉树是任一结点无右子女; (4)前序和后序遍历结果相同的二叉树是只有根结点。

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

1. 一棵深度为6的满二叉树有()个分支结点和()个叶子。

2.一棵具有257个结点的完全二叉树,它的深度为()。

3.设一棵完全二叉树有700个结点,则共有()个叶子结点。

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

5. 一棵含有n个结点的k叉树,可能达到的最大深度为(),最小深度为()。

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

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

最常用的是三种:()()和()。

这三种方法相互之间有关联。

若已知一棵二叉树的前序序列是BEFCGDH,中序序列是FEBGCHD,则它的后序序列必是(F E G H D C B )。

7.中序遍历的递归算法平均空间复杂度为()。

8.用5个权值{3, 2, 4, 5, 1}构造的哈夫曼(Huffman)树的带权路径长度是()。

9.在二叉树中,指针p所指结点为叶子结点的条件是(p->lchild==null && p->rchlid==null )。

10.深度为k的完全二叉树至少有_______个结点,至多有_______个结点。

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

12.具有n个结点的二叉树中,一共有________个指针域,其中只有________个用来指向结点的左右孩子,其余的________个指针域为NULL。

13.树的主要遍历方法有________、________、________等三种。

14.一个深度为k的,具有最少结点数的完全二叉树按层次,(同层次从左到右)用自然数依此对结点编号,则编号最小的叶子的序号是______;编号是i的结点所在的层次号是______(根所在的层次号规定为1层)。

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

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

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

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

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

20.以下程序段采用先根遍历方法求二叉树的叶子数,请在横线处填充适当的语句。

V oid countleaf(bitreptr t,int *count)/*根指针为t,假定叶子数count的初值为0*/
{
if(t!=NULL)
{
if((t->lchild==NULL)&&(t->rchild==NULL))________;
countleaf(t->lchild,&count);
________ ;
}
}
参考答案:
1.(1)n1+n2=0+n2=n0-1=31 (2)26-1=32
2. 9
3. 350
4. 500 499 1 0
5. n 2
6. 前序法中序法后序法 F E G H D C B
7. O(n)
8. 33
9. p->lchild==null && p->rchlid==null
10. 2k-1 2k-1
11. 64
12. 2n n-1 n+1
13. 先序遍历后序遍历中序遍历
14. (1)2k-2+1 (2)log(2i)+1
15. 4
16. 任何结点至多只有右子女的二叉树。

17. 二叉排序树
18. 前序
19. 69
20. *count++, countleaf(l->rchile,count)。

相关文档
最新文档