数据结构树和二叉树习题及答案
习题六 树和二叉树
一、单项选择题
1. 以下说法错误的是 ( )
A.树形结构的特点是一个结点可以有多个直接前趋
B.线性结构中的一个结点至多只有一个直接后继
C.树形结构可以表达(组织)更复杂的数据
D.树(及一切树形结构)是一种"分支层次"结构
E.任何只含一个结点的集合是一棵树
2.下列说法中正确的是 ( )
A.任何一棵二叉树中至少有一个结点的度为2
B.任何一棵二叉树中每个结点的度都为2
C.任何一棵二叉树中的度肯定等于2
D.任何一棵二叉树中的度可以小于2
3.讨论树、森林和二叉树的关系,目的是为了( )
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+M3
7.一棵完全二叉树上有1001个结点,其中叶子结点的个数是( )
A. 250 B. 500 C.254 D.505 E.以上答案都不对
8. 设给定权值总数有n 个,其哈夫曼树的结点总数为( )
A.不确定 B.2n C.2n+1 D.2n-1
9.二叉树的第I层上最多含有结点数为( )
A.2I B. 2I-1-1 C. 2I-1 D.2I -1
10.一棵二叉树高度为h,所有结点的度或为0,或为2,则这棵二叉树最少有( )结点
A.2h B.2h-1 C.2h+1 D.h+1
11. 利用二叉链表存储树,则根结点的右指针是( )。
A.指向最左孩子 B.指向最右孩子 C.空 D.非空
12.已知一棵二叉树的前序遍历结果为ABCDEF,中序遍历结果为CBAEDF,则后序遍历的结果为( )。
A.CBEFDA B. FEDCBA C. CBEDFA D.不定
13.已知某二叉树的后序遍历序列是dabec, 中序遍历序列是debac , 它的前序遍历是( )。
A.acbed B.decab C.deabc D.cedba
14.在二叉树结点的先序序列,中序序列和后序序列中,所有叶子结点的先后顺序( )
A.都不相同 B.完全相同
C.先序和中序相同,而与后序不同 D.中序和后序相同,而与先序不同
15.在完全二叉树中,若一个结点是叶结点,则它没( )。
A.左子结点 B.右子结点
C.左子结点和右子结点 D.左子结点,右子结点和兄弟结点 16.在下列情况中,可称为二叉树的是( )
A.每个结点至多有两棵子树的树
B. 哈夫曼树
C.每个结点至多有两棵子树的有序树
D. 每个结点只有一棵右子树
E.以上答案都不对
17. 一棵左右子树均不空的二叉树在先序线索化后,其中空的链域的个数是:( )。
A. 0 B. 1 C. 2 D. 不确定
18. 引入二叉线索树的目的是( )
A.加快查找结点的前驱或后继的速度 B.为了能在二叉树中方便的进行插入与删除
C.为了能方便的找到双亲 D.使二叉树的遍历结果唯一
19.n个结点的线索二叉树上含有的线索数为( )
A.2n B.n-l C.n+l D.n
20.由3 个结点可以构造出多少种不同的二叉树?( )
A.2 B.3 C.4 D.5
21.下面几个符号串编码集合中,不是前缀编码的是( )。
A.{0,10,110,1111} B.{11,10,001,101,0001}
C.{00,010,0110,1000} D.{b,c,aa,ac,aba,abb,abc}
22. 一棵有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.条件不充分,无法确定
23、以下说法错误的是 ( )
A.哈夫曼树是带权路径长度最短的树,路径上权值较大的结点离根较近。
B.若一个二叉树的树叶是某子树的中序遍历序列中的第一个结点,则它必是该子树的后序遍历序列中的第一个结点。
C.已知二叉树的前序遍历和后序遍历序列并不能惟一地确定这棵树,因为不知道树的根结点是哪一个。
D.在前序遍历二叉树的序列中,任何结点的子树的所有结点都是直接跟在该结点的之后。
二、判断题(在各题后填写“√”或“×”)
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所指结点为叶子结点的条件是___ ___。
2.深度为k的完全二叉树至少有___ ____个结点,至多有___ ____个结点。 3.高度为8的完全二叉树至少有______个叶子结点。
4.具有n个结点的二叉树中,一共有________个指针域,其中只有________个用来指向结点的左右孩子,其余的________个指针域为NULL。
5.树的主要遍历方法有________、________、________等三种。
6.一个深度为k的,具有最少结点数的完全二叉树按层次,(同层次从左到右)用自然数依此对结点编号,则编号最小的叶子的序号是__ _;编号是i的结点所在的层次号是_ __(根所在的层次号规定为1层)。
7.如果结点A有 3个兄弟,而且B是A的双亲,则B的度是______。
8.二叉树的先序序列和中序序列相同的条件是___ ___。
9.一个无序序列可以通过构造一棵___ ___树而变成一个有序序列,构造树的过程即为对无序序列进行排序的过程。
10.若一个二叉树的叶子结点是某子树的中序遍历序列中的最后一个结点,则它必是该子树的____ __序列中的最后一个结点。
11.若以{4,5,6,7,8}作为叶子结点的权值构造哈夫曼树,则其带权路径长度是______。
12.以下程序段采用先根遍历方法求二叉树的叶子数,请在横线处填充适当的语句。
Void countleaf(bitreptr t,int *count)/*根指针为t,假定叶子数count的初值为0*/
{if(t!=NULL)
{if((t->lchild==NULL)&&(t->rchild==NULL))________;
countleaf(t->lchild,&count);
________
}
}
13.以下程序是二叉链表树中序遍历的非递归算法,请填空使之完善。二叉树链表的结点类型的定义如下:
typedef struct node /*C语言/
{char data; struct node *lchild,*rchild;}*bitree;
void vst(bitree bt) /*bt为根结点的指针*/
{ bitree p; p=bt; initstack(s); /*初始化栈s为空栈*/
while(p || !empty(s)) /*栈s不为空*/
if(p) { push (s,p); (1)___ ; } /*P入栈*/
else { p=pop(s); printf(“%c”,p->data);(2)__ __; }/*栈顶元素出栈*/
}
14.二叉树存储结构同上题,以下程序为求二叉树深度的递归算法,请填空完善之。
int depth(bitree bt) /*bt为根结点的指针*/
{int hl,hr;
if (bt==NULL) return((1)_ __);
hl=depth(bt->lchild); hr=depth(bt->rchild);
if((2)_ __) (3)_ ____;
return(hr+1);
中国农业大学_821数据结构_《数据结构》习题(6)
第6章 二叉树与树
一、回答题
1. 图6-1所示的树的叶子结点、非中端结点、每个结点的度及树的深度各是多少?
图6-1 树
2. 已知一棵树边的集合表示为:{ ( L, N ), ( G, K ), ( G, L ), ( G, M ), ( B, E ), ( B, F ),
( D, G ), ( D, H ), ( D, I ), ( D, J ), ( A, B ), ( A, C ), ( A, D ) },画出这棵树,并回答以下问题:
(1) 树的根结点是哪个?哪些是叶子结点?哪些是非终端结点?
(2) 树的度是多少?各个结点的度是多少?
(3) 树的深度是多少?各个结点的层数是多少?
(4) 对于结点G,它的双亲结点、祖先结点、孩子结点、子孙结点、兄弟和堂兄弟分别
是哪些结点?
3. 如果一棵度为m的树中,度为1的结点数为n1,度为2的结点数为n2,……,度为m
的结点数为nm,那么该树中含有多少个叶子结点?有多少个非终端结点? A
B E C D
F G H J I 4. 任意一棵有n个结点的二叉树,已知有m个叶子结点,能否证明度为2结点有m-1个?
5. 已知在一棵含有n个结点的树中,只有度为k的分支结点和度为0的叶子结点,那么
该树含有的叶子结点的数目是多少?
6. 一棵含有n个结点的k叉树,可能达到的最大深度和最小深度各为多少?
7. 对于3个结点A、B、C,可以过程多少种不同形态的二叉树?
8. 深度为5的二叉树至多有多少个结点?
9. 任何一棵二叉树的叶子结点在先序、中序和后序遍历中的相对次序是发生改变?不
发生改变?不能确定?
10. 设n、m为一棵二叉树上的两个结点,在中序遍历时,n在m前的条件是什么?
11. 已知某二叉树的后续遍历序列是dabec,中序遍历序列是debac,那么它的前序遍历
序列是什么?
12. 对一棵满二叉树,m个树叶,n个结点,深度为h,则n、m和h之间的关系是什么?
数据结构叉树习题含答案
1 / 7 第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=
A.mk-1 B.mk-1 C.mh-1 D.mh-1
(6)利用二叉链表存储树,则根结点的右指针是( )。
A.指向最左孩子 B.指向最右孩子 C.空 D.非空
(7)对二叉树的结点从1开始进行连续编号,要求每个结点的编号大于其左、右孩子的编号,同一结点的左右孩子中,其左孩子的编号小于其右孩子的编号,可采用( )遍历实现编号。
A.先序 B. 中序 C. 后序 D. 从根开始按层次遍历
(8)若二叉树采用二叉链表存储结构,要交换其所有分支结点左、右子树的位置,利用( )遍历方法最合适。
A.前序 B.中序 C.后序 D.按层次
(9)在下列存储形式中,( )不是树的存储形式?
《数据结构与算法》第六章-树与二叉树习题
《数据结构与算法》第二部分 习题精选
一、下面是有关二叉树的叙述,请判断正误
( )1. 若二叉树用二叉链表作存贮结构,则在n个结点的二叉树链表中只有n—1个非空指针域。
( )2.二叉树中每个结点的两棵子树的高度差等于1。
( )3.二叉树中每个结点的两棵子树是有序的。
( )4.二叉树中每个结点有两棵非空子树或有两棵空子树。
( )5.二叉树中每个结点的关键字值大于其左非空子树(若存在的话)所有结点的关键字值,且小于其右非空子树(若存在的话)所有结点的关键字值。
( )6.二叉树中所有结点个数是2k-1-1,其中k是树的深度。
( )7.二叉树中所有结点,如果不存在非空左子树,则不存在非空右子树。
( )8.对于一棵非空二叉树,它的根结点作为第一层,则它的第i层上最多能有2i—1个结点。
( )9.用二叉链表法(link-rlink)存储包含n个结点的二叉树,结点的2n个指针区域中有n+1个为空指针。
( √ )10. 具有12个结点的完全二叉树有5个度为2的结点。
二、填空
1. 由3个结点所构成的二叉树有 种形态。
2. 一棵深度为6的满二叉树有 个分支结点和 个叶子。
3. 一棵具有257个结点的完全二叉树,它的深度为 。
4.设一棵完全二叉树有700个结点,则共有 个叶子结点。
5. 设一棵完全二叉树具有1000个结点,则此完全二叉树有 个叶子结点,有 个度为2的结点,有 个结点只有非空左子树,有 个结点只有非空右子树。
6.一棵含有n个结点的k叉树,可能达到的最大深度为 ,最小深度为 。
7. 二叉树的基本组成部分是:根(N)、左子树(L)和右子树(R)。因而二叉树的遍历次序有六种。最常用的是三种:前序法(即按N L R次序),后序法(即按 次序)和中序法(也称对称序法,即按L N R次序)。这三种方法相互之间有关联。若已知一棵二叉树的前序序列是BEFCGDH,中序序列是FEBGCHD,则它的后序序列必是 。
数据结构-树习题
数据结构-树习题
第六章 树
⼀、选择题1、⼆叉树的深度为k,则⼆叉树最多有( C )个结点。
A. 2k B. 2k-1 C. 2k-1 D. 2k-1
2、⽤顺序存储的⽅法,将完全⼆叉树中所有结点按层逐个从左到右的顺序存放在⼀维数组R[1..N]中,若结点R[i]有右孩⼦,则其右孩⼦是(B )。
A. R[2i-1] B. R[2i+1] C. R[2i] D. R[2/i]
3、设a,b为⼀棵⼆叉树上的两个结点,在中序遍历时,a在b前⾯的条件是( B )。
A. a在b的右⽅ B. a在b的左⽅ C. a是b的祖先 D. a是b的⼦孙
4、设⼀棵⼆叉树的中序遍历序列:badce,后序遍历序列:bdeca,则⼆叉树先序遍历序列为( )。
A. adbce B. decab C. debac D. abcde
5、在⼀棵具有5层的满⼆叉树中结点总数为(A)。
A. 31 B. 32 C. 33 D. 16
6、由⼆叉树的前序和后序遍历序列( B )惟⼀确定这棵⼆叉树。
A. 能 B. 不能
7、某⼆叉树的中序序列为ABCDEFG,后序序列为BDCAFGE,则其左⼦树中结点数⽬为( C )。
A. 3 B. 2 C. 4 D. 5
8、若以{4,5,6,7,8}作为权值构造哈夫曼树,则该树的带权路径长度为( C )。
A. 67 B. 68 C. 69 D. 70
9、将⼀棵有100个结点的完全⼆叉树从根这⼀层开始,每⼀层上从左到右依次对结点进⾏编号,根结点的编号为1,则编号为49的结点的左孩⼦编号为( A )。A. 98 B. 99 C. 50 D. 48
10、表达式a*(b+c)-d的后缀表达式是( B )。
A. abcd+- B. abc+*d- C. abc*+d- D. -+*abcd
11、对某⼆叉树进⾏先序遍历的结果为ABDEFC,中序遍历的结果为DBFEAC,则后序遍历的结果是( B )。
A. DBFEAC B. DFEBCA C. BDFECA D. BDEFAC
数据结构练习题--树(题)
1 第六章 树
一.名词解释:
1 树 2。结点的度 3。叶子 4。分支点 5。树的度
6.父结点、子结点 7兄弟 8结点的层数 9树的高度 10 二叉树
11 空二叉树 12 左孩子、右孩子 13孩子数 14 满二叉树 15完全二叉树
16 先根遍历 17 中根遍历 18后根遍历 19二叉树的遍历 20 判定树
21 哈夫曼树
二、填空题
1、 树(及一切树形结构)是一种“________”结构。在树上,________结点没有直接前趋。对树上任一结点X来说,X是它的任一子树的根结点惟一的________。
2、 一棵树上的任何结点(不包括根本身)称为根的________。若B是A的子孙,则称A是B的________
3、 一般的,二叉树有______二叉树、______的二叉树、只有______的二叉树、只有______
的二叉树、同时有______的二叉树五种基本形态。
4、 二叉树第i(i>=1)层上至多有______个结点。
5、 深度为k(k>=1)的二叉树至多有______个结点。
6、 对任何二叉树,若度为2的节点数为n2,则叶子数n0=______。
7、 满二叉树上各层的节点数已达到了二叉树可以容纳的______。满二叉树也是______二叉树,但反之不然。
8、 具有n个结点的完全二叉树的深度为______。
9、 如果将一棵有n个结点的完全二叉树按层编号,则对任一编号为i(1<=i<=n)的结点X有:
(1) 若i=1,则结点X是______;若i〉1,则X的双亲PARENT(X)的编号为______。
(2) 若2i>n,则结点X无______且无______;否则,X的左孩子LCHILD(X)的编号为______。
(3) 若2i+1>n,则结点X无______;否则,X的右孩子RCHILD(X)的编号为______。
10.二叉树通常有______存储结构和______存储结构两类存储结构。
数据结构课后习题(第6章)
楚雄师院计科系 网络工程2010级 《算法与数据结构》课后习题(第6章)
第 1 页 【课后习题】第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 2 3 4 5 6 7 8 9 10
1. 对于一棵非空二叉树,它的根结点作为第一层,则它的第i层上最多能有2i-1个结点。
2. 二叉树的前序遍历并不能唯一确定这棵树,但是,如果我们还知道该二叉树的根结点是那一个,则可以确定这棵二叉树。
《数据结构》第五章习题参考答案
《数据结构》第五章习题参考答案
一、判断题(在正确说法的题后括号中打“√”,错误说法的题后括号中打
“×”)
1、知道一颗树的先序序列和后序序列可唯一确定这颗树。( × )
2、二叉树的左右子树可任意交换。( × )
3、任何一颗二叉树的叶子节点在先序、中序和后序遍历序列中的相对次序不发
生改变。( √ )
4、哈夫曼树是带权路径最短的树,路径上权值较大的结点离根较近。( √
)
5、用一维数组存储二叉树时,总是以前序遍历顺序存储结点。( × )
6、完全二叉树中,若一个结点没有左孩子,则它必是叶子结点。( √ )
7、一棵树中的叶子数一定等于与其对应的二叉树的叶子数。( × )
8、度为2的树就是二叉树。( × )
二、单项选择题
1.具有10个叶结点的二叉树中有( B )个度为2的结点。
A.8 B.9 C.10 D.11
2.树的后根遍历序列等同于该树对应的二叉树的( B )。
A. 先序序列 B. 中序序列 C. 后序序列
3、二叉树的先序遍历和中序遍历如下: 先序遍历:EFHIGJK;中序遍历:HFIEJKG 。
该二叉树根的右子树的根是:( C )
A. E B. F C. G D. H0
4、在下述结论中,正确的是( D )。
①具有n个结点的完全二叉树的深度k必为┌log2(n+1)┐; ②二叉树的度为2;③二叉
树的左右子树可任意交换;④一棵深度为k(k≥1)且有2k-1个结点的二叉树称为满二叉
树。A.①②③ B.②③④ C.①②④ D.①④
5、某二叉树的后序遍历序列与先序遍历序列正好相反,则该二叉树一定是( D )。
A.空或只有一个结点 B.完全二叉树C.二叉排序树 D.高度等于其结点数
三、填空题
1、对于一棵具有n个结点的二叉树,对应二叉链接表中指针总数为__2n____
个,其中___n-1_____个用于指向孩子结点,___n+1___个指针空闲着。2、一棵深度为k(k≥1)的满二叉树有_____2k-1______个叶子结点。
数据结构课后习题及解析第六章
数据结构课后习题及解析第六章
第六章习题
1.试分别画出具有3个结点的树和3个结点的二叉树的所有不同形态。
2.对题1所得各种形态的二叉树,分别写出前序、中序和后序遍历的序列。
3.已知一棵度为k的树中有n1个度为1的结点,n2个度为2的结点,……,nk个度为k的结点,则该树中有多少个叶子结点并证明之。
4.假设一棵二叉树的先序序列为EBADCFHGIKJ,中序序列为ABCDEFGHIJK,请画出该二叉树。
5.已知二叉树有50个叶子结点,则该二叉树的总结点数至少应有多少个?
6.给出满足下列条件的所有二叉树:
① 前序和后序相同
② 中序和后序相同
③ 前序和后序相同
7. n个结点的K叉树,若用具有k个child域的等长链结点存储树的一个结点,则空的Child域有多少个?
8.画出与下列已知序列对应的树T:
树的先根次序访问序列为GFKDAIEBCHJ;
树的后根次序访问序列为DIAEKFCJHBG。
9.假设用于通讯的电文仅由8个字母组成,字母在电文中出现的频率分别为:
0.07,0.19,0.02,0.06,0.32,0.03,0.21,0.10
请为这8个字母设计哈夫曼编码。
10.已知二叉树采用二叉链表存放,要求返回二叉树T的后序序列中的第一个结点指针,是否可不用递归且不用栈来完成?请简述原因.
11. 画出和下列树对应的二叉树:
12.已知二叉树按照二叉链表方式存储,编写算法,计算二叉树中叶子结点的数目。
13.编写递归算法:对于二叉树中每一个元素值为x的结点,删去以它为根的子树,并释放相应的空间。
14.分别写函数完成:在先序线索二叉树T中,查找给定结点*p在先序序列中的后继。在后序线索二叉树T中,查找给定结点*p在后序序列中的前驱。
15.分别写出算法,实现在中序线索二叉树中查找给定结点*p在中序序列中的前驱与后继。
16.编写算法,对一棵以孩子-兄弟链表表示的树统计其叶子的个数。
计算机专业基础综合数据结构树和二叉树历年真题试卷汇编6_真题(含答案与解析)-交互
计算机专业基础综合数据结构(树和二叉树)历年真题试卷汇编6
(总分88, 做题时间90分钟)
1. 单项选择题
1.
一棵完全二叉树又是一棵( )。【华中科技大学2006一、7(2分)】
SSS_SINGLE_SEL
A 平衡二叉树
B 堆
C 二叉排序树
D 哈夫曼(Huffman)树
分值: 2
答案:B
解析:完全二叉树的叶子至多在下面两层上,且一个结点若无左子树,绝不能有右子树。平衡二叉树任何结点的左右子树的高度差的绝对值不超过1,但其结点的值符合二叉排序树的定义。平衡二叉树(包括二叉排序树)的树形不一定是完全二叉树。堆是一个序列,有大堆和小堆,编号为i的结点,其父结点、左右子女结点之间位置的关系,符合完全二叉树父结点、左右子女结点之间的关系,从这点上说,可以把堆看成完全二叉树。哈夫曼树是二叉树,但树形不一定满足完全二叉树的定义。
2.
一棵左子树为空的二叉树在先序线索化后,其中空的链域的个数是( )。【合肥工业大学1999一、5(2分)】
SSS_SINGLE_SEL
A 不确定
B 0
C 1
D 2
分值: 2
答案:D
解析:左子树为空的二叉树的根结点的左线索为空(无前驱),先序序列的最后结点的右线索为空(无后继),共2个空链域。
3.
一棵左右子树均不空的二叉树在先序线索化后,其中空的链域的个数是( )。【合肥工业大学2000一、5(2分)】
SSS_SINGLE_SEL
A 0
B 1
C 2
D 不确定
分值: 2
答案:B
4.
若X是二叉中序线索树中一个有左孩子的结点,且X不为根,则X的前驱为( )。【南京理工大学1996一、6(2分)】
SSS_SINGLE_SEL
A X的双亲
B X的右子树中最左的结点
C X的左子树中最右结点
D X的左子树中最右叶结点
分值: 2
答案:C
5.
引入二叉线索树的目的是( )。【南京理工大学1998一、5(2分)】
数据结构复习题-第6章答案2014-6-16
第6章 树和二叉树
一、选择题(每小题1分,共10分)
1.以下数据结构中,( A )是非线性数据结构。
A.树 B.线性表 C.队列 D.栈
2.在一棵二叉树中第五层上的结点数最多为( B )。
A.8 B.15 C.16 D.32
3. 已知一棵二叉树的前序遍历结果为ABCDEF,中序遍历结果为CBAEDF,则后序遍历的结果为( A )。
A. CBEFDA B. FEDCBA C. CBEDFA D. 不定
4.若一棵二叉树具有10个度为2的结点,5个度为1的结点,则度为0的结点个数是( B )。
A.9 B.11 C.15 D.不确定
5.给定二叉树如图所示。设N代表二叉树的根,L代表根结点的左子树,R代表根结点的右子树。若遍历后的结点序列为3,7,5,6,1,2,4,则其遍历方式是( D )。
A. LRN B. NRL C. RLN D. RNL
6.在下列存储形式中,哪一个不是树的存储形式?( D )
A.双亲表示法 B.孩子表示法 C.孩子兄弟表示法 D.顺序存储表示法
7.有n个叶子的哈夫曼树的结点总数为( D )。
A.不确定 B.2n C.2n+1 D.2n-1
8.设i为n个结点的完全二叉树结点编号,i=1,2,3...n;若i≤(n-1)/2时,结点i的右孩子为( B )
A.2i B.2i+1 C.2i-1 D.i+1
9. 由分别带权为9、2、5、7的四个叶子结点构造一棵哈夫曼树,该树的带权路径长度为( C )。
A.23 B.37 C.44 D.46
