第6,7章(答案)

更新时间:2023-09-14 04:21:01 阅读量: 初中教育 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

第6章 树和图 自测卷 姓名 班级 学号

题号 题分 得分 一 10 二 17 三 17 四 40 五 16 总分 100

一、下面是有关二叉树的叙述,请判断正误(每小题1分,共10分)

( )1.若二叉树用二叉链表作存贮结构,则在n个结点的二叉树链表中只有n—1个非空指针域。 ( )2.二叉树中每个结点的两棵子树的高度差等于1。 ( )3.二叉树中每个结点的两棵子树是有序的。

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

k-1

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

i

( )6. 对于一棵非空二叉树,它的根结点作为第一层,则它的第i层上最多能有2-1个结点。 ( )7. 具有12个结点的完全二叉树有5个度为2的结点。

( )8. 不同的求最小生成树的方法最后得到的生成树是相同的.

( )9. 有n个顶点的无向图, 采用邻接矩阵表示, 图中的边数等于邻接矩阵中非零元素之和的一半。 ( )10. 无向图的邻接矩阵一定是对称矩阵,有向图的邻接矩阵一定是非对称矩阵。

二、填空(每空1分,共17分)

1. 由3个结点所构成的二叉树有 种形态。

2. 一棵深度为6的满二叉树有 个分支结点和 个叶子。 3. 一棵具有257个结点的完全二叉树,它的深度为 。 4. 设一棵完全二叉树有700个结点,则共有 个叶子结点。

5. 用5个权值{3, 2, 4, 5, 1}构造的哈夫曼(Huffman)树的带权路径长度是 。 6. 判断一个无向图是一棵树的条件是______。

7. 在有n个顶点的有向图中,若要使任意两点间可以互相到达,则至少需要______条弧。 8. G是一个非连通无向图,共有28条边,则该图至少有______个顶点

9. N个顶点的连通图用邻接矩阵表示时,该矩阵至少有_______个非零元素。 10.在有n个顶点的有向图中,每个顶点的度最大可达______。 11.设有一稀疏图G,则G采用 存储较省空间。

12.设有一稠密图G,则G采用 存储较省空间。

13.n个顶点e条边的图采用邻接矩阵存储,深度优先遍历算法的时间复杂度为 ;若采用邻接表存储时,该算法的时间复杂度为 。

14. 已知图的邻接矩阵,根据算法思想,则从顶点0出发按深度优先遍历的结点序列是 。则从顶点0出发按广度优先遍历的结点序列是 。

?0?1??1??1?1??0??1111101?001001??000100??100110?011010??001101?100010??三、选择题(每小题1分,共17分)

( )1. 不含任何结点的空树 。

1

(A)是一棵树; (B)是一棵二叉树;

(C)是一棵树也是一棵二叉树; (D)既不是树也不是二叉树

( )2.二叉树是非线性数据结构,所以 。

(A)它不能用顺序存储结构存储; (B)它不能用链式存储结构存储;

(C)顺序存储结构和链式存储结构都能存储; (D)顺序存储结构和链式存储结构都不能使用

( )3. 具有n(n>0)个结点的完全二叉树的深度为 。

(A) ?log2(n)? (B) ? log2(n)? (C) ? log2(n) ?+1 (D) ?log2(n)+1?

( )4.把一棵树转换为二叉树后,这棵二叉树的形态是 。

(A)唯一的 (B)有多种

(C)有多种,但根结点都没有左孩子 (D)有多种,但根结点都没有右孩子

( )5. 在一个图中,所有顶点的度数之和等于图的边数的 倍。

A.1/2 B. 1 C. 2 D. 4

( )7. 在一个有向图中,所有顶点的入度之和等于所有顶点的出度之和的 倍。 A.1/2 B. 1 C. 2 D. 4

( )8. 用邻接表表示图进行广度优先遍历时,通常是采用 来实现算法的。

A.栈 B. 队列 C. 树 D. 图

( )9. 深度优先遍历类似于二叉树的

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

( )10. 广度优先遍历类似于二叉树的

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

11. 树是结点的有限集合,它 A 根结点,记为T。其余的结点分成为m(m≥0)个 B

的集合T1,T2,…,Tm,每个集合又都是树,此时结点T称为Ti的父结点,Ti称为T的子结点(1≤i≤m)。一个结点的子结点个数为该结点的 C 。 供选择的答案

A: ①有0个或1个 ②有0个或多个 ③有且只有1个 ④有1个或1个以上 B: ①互不相交 ② 允许相交 ③ 允许叶结点相交 ④ 允许树枝结点相交 C: ①权 ② 维数 ③ 次数 ④ 序 答案:A= B= C=

12. 二叉树 A 。在完全的二叉树中,若一个结点没有 B ,则它必定是叶结点。每棵树都能惟一地转换成与它对应的二叉树。由树转换成的二叉树里,一个结点N的左子女是N在原树里对应结点的 C ,而N的右子女是它在原树里对应结点的 D 。 供选择的答案

A: ①是特殊的树 ②不是树的特殊形式 ③是两棵树的总称 ④有是只有二个根结点的树形结构 B: ①左子结点 ② 右子结点 ③ 左子结点或者没有右子结点 ④ 兄弟

C~D: ①最左子结点 ② 最右子结点 ③ 最邻近的右兄弟 ④ 最邻近的左兄弟 ⑤ 最左的兄弟 ⑥ 最右的兄弟

答案:A= B= C= D=

四、阅读分析题(每题5分,共40分)

1. 给定二叉树的两种遍历序列,分别是:

前序遍历序列:D,A,C,E,B,H,F,G,I; 中序遍历序列:D,C,B,E,H,A,G,I,F, 试画该出二叉树

2

图2 图1

2.试写出如图1所示的二叉树分别按先序、中序、后序遍历时得到的结点序列。

3. 把如图2所示的树转化成二叉树。

4.画出图3二叉树相应的森林。

图3

5..已知如图所示的有向图,请给出该图的:

(1) 每个顶点的入/出度; (2) 邻接矩阵; (3) 邻接表; (4) 逆邻接表。

顶点 入度 出度 1 3 0 2 2 2 3 1 2 4 1 3 5 2 1 6 2 3 6.请对下图的无向带权图:

(1) 写出它的邻接矩阵,并按普里姆算法求其

最小生成树;

(2) 写出它的邻接表,并按克鲁斯卡尔算法求其最小生成树。

3

7.已知二维数组表示的图的邻接矩阵如下图所示。试分别画

出自顶点1出发进行遍历所得的深度优先生成树和广度优先生成树。

8.给定下列网G: (10分)

1 试着找出网G的最小生成树,画出其逻辑结构图; 2 用两种不同的表示法画出网G的存储结构图;

3 用C语言(或其他算法语言)定义其中一种表示法(存储结构)的数据类型。

五、算法设计题(前1~5题中任选2题,第6~7题中任选1题,共16分)

1.编写递归算法,计算二叉树中叶子结点的数目。

2. 写出求二叉树深度的算法,先定义二叉树的抽象数据类型。

3.编写递归算法,求二叉树中以元素值为x的结点为根的子树的深度。 4.编写按层次顺序(同一层自左至右)遍历二叉树的算法。 5.编写算法判别给定二叉树是否为完全二叉树。

6.编写算法,由依次输入的顶点数目、弧的数目、各顶点的信息和各条弧的信息建立有向图的邻接表。 解:Status Build_AdjList(ALGraph &G) //输入有向图的顶点数,边数,顶点信息和边的信息,以建立邻接表 {

return OK; }//Build_AdjList

7.试在邻接矩阵存储结构上实现图的基本操作:DeleteArc(G,v,w),即删除一条边的操作。 (如果要删除所有从第i个顶点出发的边呢? 提示: 将邻接矩阵的第i行全部置0 ) 解: //设本题中的图G为有向无权图

Status DeleteArc(MGraph &G, char v, char w) //在邻接矩阵表示的图G上删除边(v,w) { }

return OK; }//Delete_Arc 答案:

4

一、

1 √ 二、

2 × 3 × 4 × 5 × 6 × 7 √ 8 × 9 √ 10 × 1 2 3 4 5 5 31,32 9 350 33 6 n个顶点n-1条边的连通图 7 n 8 9 9 2(n-1) 10 2*(n-1) 11 12 13 14 15 邻接表 邻接矩阵 O(n2) O(n+e) 0134256 0123465 三、 四、 1、 答:

前序遍历序列:D,A,C,E,B,H,F,G,I; 中序遍历序列:D,C,B,E,H,A,G,I,F, 试画出二叉树B,并简述由任意二叉树B的前序遍历序列和中序遍历序列求二叉树B的思想方法。

解:方法是:由前序先确定root,由中序可确定root的左、右子树。然后由其左子树的元素集合和右子树的集合对应前序遍历序列中的元素集合,可继续确定root的左右孩子。将他们分别作为新的root,不断递归,则所有元素都将被唯一确定,问题得解。

2、答:DLR:A B D F J G K C E H I L M LDR: B F J D G K A C H E L I M LRD:J F K G D B H L M I E C A 3、

答:注意全部兄弟之间都要连线(包括度为2的兄弟),并注意原有连线结点一律归入左子树,新添连线结点一律归入右子树。

4、

答:注意根右边的子树肯定是森林,而孩子结点的右子树均为兄弟。

5

本文来源:https://www.bwwdw.com/article/uadh.html

Top