《数据结构》第八章习题参考答案 (1)
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
5、课本P3928.4题
【解答】
用邻接矩阵表示图,矩阵元素的个数是顶点个数的平方,与边的条数无关。矩阵中非零元素的个数与边的条数有关。
6、课本P3928.5题
【解答】
一个图中有1000个顶点,其邻接矩阵中的矩阵元素有10002= 1000000个。它有1000个非零元素(对于有向ຫໍສະໝຸດ Baidu)或2000个非零元素(对于无向图),是稀疏矩阵。
9、课本P3928.9题
【解答】
采用邻接表存储的图的DFS遍历类似于二叉树的先序遍历,BFS遍历类似于二叉树的按层遍历。
10、课本P3928.10题
【解答】
DFS和BFS树都不唯一,
只是给出了一种解答。
11、课本P3938.17题
(1)【解答】
此工程最早完成时间为43。关键路径为<1, 3><3, 2><2, 5><5, 6>
《数据结构》第八章习题参考答案
一、判断题(在正确说法的题后括号中打“√”,错误说法的题后括号中打“×”)
1、用邻接矩阵法存储一个图所需的存储单元数目与图的边数有关。(×)
2、有e条边的无向图,在邻接表中有e个结点。(×)
3、强连通图的各顶点间均可达。(√)
4、无向图的邻接矩阵一定是对称矩阵,有向图的邻接矩阵一定是非对称矩阵。(×)
(2)邻接矩阵表示:顶点i和j是否有边只需看i行j列(或j行i列)矩阵元素是否非零;
邻接表表示时:看i顶点(或j顶点)的边结点链表中是否存在地址指向j顶点(或i顶点)的结点。
(3)邻接矩阵表示:无向图的任意顶点的度=顶点所对应行(或列)的非零矩阵元素个数。
有向图的任意顶点的度=顶点所对应行和对应列的非零矩阵元素个数之和。
5、一个网(带权图)都有唯一的最小生成树。(×)
6、最小生成树问题是构造连通网的最小代价生成树。(√)
7、关键路径是AOE网中从源点到终点的最长路径。(√)
8、在AOE图中,关键路径上活动的时间延长多少,整个工程的时间也就随之延长多少。(√)
9、n个顶点的完全有向图的边数为n(n-1)。(√)
10、稀疏图的存储结构采用邻接表比较合适。(√)
上面不正确的是(A)。
A.(1),(2),(3) B.(1) C.(1),(3) D.(2),(3)
5、下列说法不正确的是(C)。
A.图的遍历是从给定的源点出发每一个顶点仅被访问一次
B.遍历的基本算法有两种:深度遍历和广度遍历
C.图的深度遍历不适用于有向图
D.图的深度遍历是一个递归过程
三、填空题
1、判断一个无向图是一棵树的条件是_有n个顶点,n-1条边的无向连通图_。
注: 答案并不唯一
2、课本P3928.1题
【解答】
(1)不是强连通图
(2)简单路径如:D->B->C->F
(3)略
(4)邻接表见图,其他略
3、课本P3928.2题
【解答】
(1)邻接矩阵表示:无向图的边数为
矩阵中非零元素的个数/2;有向图的边数为矩阵中非零元素的个数。
邻接表表示时:无向图的边数为邻接表中边结点的个数/2;有向图的边数为邻接表中边结点的个数。
7、对于一个具有n个顶点e条边的无向图的邻接表的表示,则表头向量大小为__n____,邻接表的边结点个数为__2e____。
8、求图的最小生成树有两种算法,_克鲁斯卡尔(Kruskal)_算法适合于求稀疏图的最小生成树。
四、综合题
1、按下图所示,画出它的广度优先生成树和深度优先生成树(A为源点)。
【解答】
A. O(n) B. O(n+e) C. O(n2) D. O(n3)
4、(1).求从指定源点到其余各顶点的迪杰斯特拉(Dijkstra)最短路径算法中弧上权不能为负的原因是在实际应用中无意义;
(2).利用Dijkstra求每一对不同顶点之间的最短路径的算法时间是O(n3);(图用邻接矩阵表示)
(3). Floyd求每对不同顶点对的算法中允许弧上的权为负,但不能有权和为负的回路。
3、G是一个非连通无向图,共有28条边,则该图至少有__9__个顶点。
4、在有n个顶点的有向图中,每个顶点的度最大可达_2(n-1)_____。
5、有N个顶点的有向图,至少需要量__N____条弧才能保证是连通的。
6、在图G的邻接表表示中,每个顶点邻接表中所含的结点数,对于无向图来说等于该顶点的__度__;对于有向图来说等于该顶点的__出度__。
7、课本P3928.7题
【解答】
在邻接表上执行图的遍历操作时,需要对邻接表中所有的边链表中的结点访问一次,还需要对所有的顶点访问一次,时间代价是O(n+e)。
8、课本P3928.8题
【解答】
DFS和BFS遍历可分别采用栈和队列来暂存顶点来实现非递归高效遍历算法。
如果要求生成树高度最小,应采用BFS遍历。
11、在图G的最小生成树T中,可能会有某条边的权值超过未选边的权值。(√)
二、单项选择题
1.具有4个顶点的无向完全(边数为n*(n-1)/2)图有(A)条边。
A.6B.12C.16D.20
2.下列哪一种图的邻接矩阵是对称矩阵?(B)
A.有向图B.无向图C.AOV网D.AOE网
3、在图采用邻接矩阵存储时,求最小生成树的Prim算法的时间复杂度为(C)。
邻接表表示时:无向图的任意顶点的度=顶点所对应边结点链表中结点个数;
有向图的任意顶点的度=邻接表中顶点所对应边链表中结点个数+逆邻接表中顶点所对应边链表中结点个数;
4、课本P3928.3题
【解答】
n个顶点的无向连通图至少有n-1条边,n个顶点的无向强连通图至少有n(n-1)/2条边;n个顶点的有向连通图至少有n条边,n个顶点的有向强连通图至少有n(n-1)条边。
(2)(3)略
12、课本P3958.24题
【解答】
A->B : 10
A->B->D: 15
A->B->D->C : 17
A->B->D->E : 17
【解答】
用邻接矩阵表示图,矩阵元素的个数是顶点个数的平方,与边的条数无关。矩阵中非零元素的个数与边的条数有关。
6、课本P3928.5题
【解答】
一个图中有1000个顶点,其邻接矩阵中的矩阵元素有10002= 1000000个。它有1000个非零元素(对于有向ຫໍສະໝຸດ Baidu)或2000个非零元素(对于无向图),是稀疏矩阵。
9、课本P3928.9题
【解答】
采用邻接表存储的图的DFS遍历类似于二叉树的先序遍历,BFS遍历类似于二叉树的按层遍历。
10、课本P3928.10题
【解答】
DFS和BFS树都不唯一,
只是给出了一种解答。
11、课本P3938.17题
(1)【解答】
此工程最早完成时间为43。关键路径为<1, 3><3, 2><2, 5><5, 6>
《数据结构》第八章习题参考答案
一、判断题(在正确说法的题后括号中打“√”,错误说法的题后括号中打“×”)
1、用邻接矩阵法存储一个图所需的存储单元数目与图的边数有关。(×)
2、有e条边的无向图,在邻接表中有e个结点。(×)
3、强连通图的各顶点间均可达。(√)
4、无向图的邻接矩阵一定是对称矩阵,有向图的邻接矩阵一定是非对称矩阵。(×)
(2)邻接矩阵表示:顶点i和j是否有边只需看i行j列(或j行i列)矩阵元素是否非零;
邻接表表示时:看i顶点(或j顶点)的边结点链表中是否存在地址指向j顶点(或i顶点)的结点。
(3)邻接矩阵表示:无向图的任意顶点的度=顶点所对应行(或列)的非零矩阵元素个数。
有向图的任意顶点的度=顶点所对应行和对应列的非零矩阵元素个数之和。
5、一个网(带权图)都有唯一的最小生成树。(×)
6、最小生成树问题是构造连通网的最小代价生成树。(√)
7、关键路径是AOE网中从源点到终点的最长路径。(√)
8、在AOE图中,关键路径上活动的时间延长多少,整个工程的时间也就随之延长多少。(√)
9、n个顶点的完全有向图的边数为n(n-1)。(√)
10、稀疏图的存储结构采用邻接表比较合适。(√)
上面不正确的是(A)。
A.(1),(2),(3) B.(1) C.(1),(3) D.(2),(3)
5、下列说法不正确的是(C)。
A.图的遍历是从给定的源点出发每一个顶点仅被访问一次
B.遍历的基本算法有两种:深度遍历和广度遍历
C.图的深度遍历不适用于有向图
D.图的深度遍历是一个递归过程
三、填空题
1、判断一个无向图是一棵树的条件是_有n个顶点,n-1条边的无向连通图_。
注: 答案并不唯一
2、课本P3928.1题
【解答】
(1)不是强连通图
(2)简单路径如:D->B->C->F
(3)略
(4)邻接表见图,其他略
3、课本P3928.2题
【解答】
(1)邻接矩阵表示:无向图的边数为
矩阵中非零元素的个数/2;有向图的边数为矩阵中非零元素的个数。
邻接表表示时:无向图的边数为邻接表中边结点的个数/2;有向图的边数为邻接表中边结点的个数。
7、对于一个具有n个顶点e条边的无向图的邻接表的表示,则表头向量大小为__n____,邻接表的边结点个数为__2e____。
8、求图的最小生成树有两种算法,_克鲁斯卡尔(Kruskal)_算法适合于求稀疏图的最小生成树。
四、综合题
1、按下图所示,画出它的广度优先生成树和深度优先生成树(A为源点)。
【解答】
A. O(n) B. O(n+e) C. O(n2) D. O(n3)
4、(1).求从指定源点到其余各顶点的迪杰斯特拉(Dijkstra)最短路径算法中弧上权不能为负的原因是在实际应用中无意义;
(2).利用Dijkstra求每一对不同顶点之间的最短路径的算法时间是O(n3);(图用邻接矩阵表示)
(3). Floyd求每对不同顶点对的算法中允许弧上的权为负,但不能有权和为负的回路。
3、G是一个非连通无向图,共有28条边,则该图至少有__9__个顶点。
4、在有n个顶点的有向图中,每个顶点的度最大可达_2(n-1)_____。
5、有N个顶点的有向图,至少需要量__N____条弧才能保证是连通的。
6、在图G的邻接表表示中,每个顶点邻接表中所含的结点数,对于无向图来说等于该顶点的__度__;对于有向图来说等于该顶点的__出度__。
7、课本P3928.7题
【解答】
在邻接表上执行图的遍历操作时,需要对邻接表中所有的边链表中的结点访问一次,还需要对所有的顶点访问一次,时间代价是O(n+e)。
8、课本P3928.8题
【解答】
DFS和BFS遍历可分别采用栈和队列来暂存顶点来实现非递归高效遍历算法。
如果要求生成树高度最小,应采用BFS遍历。
11、在图G的最小生成树T中,可能会有某条边的权值超过未选边的权值。(√)
二、单项选择题
1.具有4个顶点的无向完全(边数为n*(n-1)/2)图有(A)条边。
A.6B.12C.16D.20
2.下列哪一种图的邻接矩阵是对称矩阵?(B)
A.有向图B.无向图C.AOV网D.AOE网
3、在图采用邻接矩阵存储时,求最小生成树的Prim算法的时间复杂度为(C)。
邻接表表示时:无向图的任意顶点的度=顶点所对应边结点链表中结点个数;
有向图的任意顶点的度=邻接表中顶点所对应边链表中结点个数+逆邻接表中顶点所对应边链表中结点个数;
4、课本P3928.3题
【解答】
n个顶点的无向连通图至少有n-1条边,n个顶点的无向强连通图至少有n(n-1)/2条边;n个顶点的有向连通图至少有n条边,n个顶点的有向强连通图至少有n(n-1)条边。
(2)(3)略
12、课本P3958.24题
【解答】
A->B : 10
A->B->D: 15
A->B->D->C : 17
A->B->D->E : 17