第七章 图习题.doc

上传人:ni****g 文档编号:559669588 上传时间:2023-04-12 格式:DOC 页数:7 大小:56KB
返回 下载 相关 举报
第七章 图习题.doc_第1页
第1页 / 共7页
第七章 图习题.doc_第2页
第2页 / 共7页
第七章 图习题.doc_第3页
第3页 / 共7页
第七章 图习题.doc_第4页
第4页 / 共7页
第七章 图习题.doc_第5页
第5页 / 共7页
点击查看更多>>
资源描述

《第七章 图习题.doc》由会员分享,可在线阅读,更多相关《第七章 图习题.doc(7页珍藏版)》请在金锄头文库上搜索。

1、第七章 图(基础知识) 7.1 【答案】在图7.23(下图)所示的各无向图中: (1)找出所有的简单环。(2)哪些图是连通图?对非连通图给出其连通分量。(3)哪些图是自由树(或森林)?答:(1)所有的简单环:(同一个环可以任一顶点作为起点)(a)1231(b)无(c)1231、2342、12341(d)无(2)连通图:(a)、(c)、(d)是连通图,(b)不是连通图,因为从1到2没有路径。具体连通分量为:(3)自由树(森林):自由树是指没有确定根的树,无回路的连通图称为自由树:(a)不是自由树,因为有回路。(b)是自由森林,其两个连通分量为两棵自由树。(c)不是自由树。(d)是自由树。7.2

2、【答案】在图7.24所示(下图)的有向图中: (1) 该图是强连通的吗? 若不是,则给出其强连通分量。(2) 请给出所有的简单路径及有向环。(3) 请给出每个顶点的度,入度和出度。(4) 请给出其邻接表、邻接矩阵及逆邻接表。答:(1)该图是强连通的,所谓强连通是指有向图中任意顶点都存在到其他各顶点的路径。(2)简单路径是指在一条路径上只有起点和终点可以相同的路径:有v1v2、v2v3、v3v1、v1v4、v4v3、v1v2v3、v2v3v1、v3v1v2、v1v4v3、v4v3v1、v3v1v4、另包括所有有向环,有向环如下:v1v2v3v1、v1v4v3v1(这两个有向环可以任一顶点作为起点

3、和终点)(3)每个顶点的度、入度和出度:D(v1)=3 ID(v1)=1 OD(v1)=2D(v2)=2 ID(v2)=1 OD(v2)=1D(v3)=3 ID(v3)=2 OD(v3)=1D(v4)=2 ID(v4)=1 OD(v4)=1(4)邻接表:(注意边表中邻接点域的值是顶点的序号,这里顶点的序号是顶点的下标值-1) vertex firstedge next 0v1 1 3 1v2 2 2v3 0 3v4 2 逆邻接表: 0v1 2 1v2 0 2v3 1 3 3v4 0 邻接矩阵: 0 1 0 1 0 0 1 0 1 0 0 0 0 0 1 07.3 【答案】假设图的顶点是A,B.

4、,请根据下述的邻接矩阵画出相应的无向图或有向图。 | 0 1 1 0 0 | | 0 1 1 1| | 0 0 0 1 0 | | 1 0 1 1| | 0 0 0 1 0 | | 1 1 0 1| | 1 0 0 0 1 | | 1 1 1 0| | 0 1 0 1 0 | (a) (b)答: 7.4 【答案】假设一棵完全二叉树包括A,B,C.等七个结点,写出其邻接表和邻接矩阵。解: 邻接表如下: 0A 1 2 1B 0 3 4 2C 0 5 6 3D 1 4E 1 5F 2 6G 2 邻接矩阵如下: 0 1 1 0 0 0 0 1 0 0 1 1 0 0 1 0 0 0 0 1 1 0 1

5、 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 1 0 0 0 07.5 【答案】对n个顶点的无向图和有向图,采用邻接矩阵和邻接表表示时,如何判别下列有关问题? (1) 图中有多少条边?(2) 任意两个顶点i和j是否有边相连?(3) 任意一个顶点的度是多少?答: 对于n个顶点的无向图和有向图,用邻接矩阵表示时: (1)设m为矩阵中非零元素的个数无向图的边数=m/2有向图的边数=m(2)无论是有向图还是无向图,在矩阵中第i行,第j列的元素若为非零值,则该两顶点有边相连。(3)对于无向图,任一顶点i的度为第i行中非零元素的个数。对于有向图,任一顶点i的入度为第

6、i列中非零元素的个数,出度为第i行中非零元素的个数,度为入度出度之和。当用邻接表表示时:(1)对于无向图,图中的边数=边表中结点总数的一半。对于有向图,图中的边数=边表中结点总数。(2)对于无向图,任意两顶点间是否有边相连,可看其中一个顶点的邻接表,若表中的adjvex域有另一顶点位置的结点,则表示有边相连。对于有向图,则表示有出边相连。(3)对于无向图,任意一个顶点的度则由该顶点的边表中结点的个数来决定。对于有向图,任意一个顶点的出度由该顶点的边表中结点的个数来决定,入度则需遍历各顶点的边表。(用逆邻接表可容易地得到其入度。)7.6 【答案】n个顶点的连通图至少有几条边?强连通图呢?答:n个

7、顶点的连通图至少有n-1条边,强连通图至少有2(n-1)条边。7.7 【答案】DFS和BFS遍历各采用什么样的数据结构来暂存顶点?当要求连通图的生成树的高度最小,应采用何种遍历?答:DFS遍历采用栈来暂存顶点。BFS采用队列来暂存顶点。当要求连通图的生成树的高度最小时,应采用BFS遍历。7.8 【答案】画出以顶点v1为初始源点遍历图7.25(下图)所示的有向图所得到的DFS 和BFS生成森林。答:7.9 【答案】按顺序输入顶点对:(1,2),(1,6),(2,6),(1,4),(6,4),(1,3),(3,4),(6,5),(4,5),(1,5),(3,5),根据第7.2.2节中算法Creat

8、ALGraph画出相应的邻接表。并写出在该邻接表上,从顶点4开始搜索所得的DFS和BFS序列,及DFS和BFS生成树。答:相应的邻接表如下: 11 5 3 4 6 2 22 6 1 33 5 4 1 44 5 36 1 55 3 1 4 6 66 5 4 2 1 根据上面的邻接表画出的图见下图: 从顶点4开始搜索所得的DFS序列是:453162 从顶点4开始搜索所得的BFS序列是:453612 相应的生成树见上图。7.10 【答案】什么样的图其最小生成树是唯一的?用PRIM 和Kruskal求最小生成树的时间各为多少?它们分别适合于哪类图?答:当候选轻边集中的轻边数始终等于1条时,其最小生成树

9、是唯一的。用Prim和Kruskal求最小生成树的时间复杂度分别为O(n2)和O(elge),前者适合于稠密图,后者适合于稀疏图.7.11 【答案】对图7.26(下图)所示的连通图,请分别用Prim和Kruskal算法构造其最小生成树。答:7.12 【答案】对图7.27(下图)所示的有向图,试利用Dijkstra算法求出从源点1到其它各顶点的最短路径,并写出执行算法过程中扩充红点集的每次循环状态(见表7.2).答:循环状态表如下:循环 红点集 K D1 D2 D3 D4 D5 D6 P1 P2 P3 P4 P5 P6初始化 1 - 0 20 15 -1 1 1 -1 -1 -1 1 1,3 3 0 19 15 25 -1 3 1 -1 -1 3 2 1,3,2 2 0 19 15 29 25 -1 3 1 -1 2 3 3 1,3,2,6 6 0 19 15 29 29 25 -1 3 1 6 2 3 4 1,3,2,6,4 4 0 19 15 29 29 25 -1 3 1 6 2 3 5 1,3,2,6,4,5 5 0 19 15 29 29 25 -1 3 1 6 2 3 6 同上 - 同上 同上从源点1到各点的路径如下所示: 1到2:1321到3:131到4

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 生活休闲 > 社会民生

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号