图练习与答案

上传人:简****9 文档编号:107273551 上传时间:2019-10-18 格式:DOC 页数:10 大小:365.50KB
返回 下载 相关 举报
图练习与答案_第1页
第1页 / 共10页
图练习与答案_第2页
第2页 / 共10页
图练习与答案_第3页
第3页 / 共10页
图练习与答案_第4页
第4页 / 共10页
图练习与答案_第5页
第5页 / 共10页
点击查看更多>>
资源描述

《图练习与答案》由会员分享,可在线阅读,更多相关《图练习与答案(10页珍藏版)》请在金锄头文库上搜索。

1、一、应用题1 首先将如下图所示的无向图给出其存储结构的邻接链表表示,然后写出对其分别进行深度,广度优先遍历的结果。367589421 1题图 答深度优先遍历序列:125967384宽度优先遍历序列:123456789注:(1)邻接表不唯一,这里顶点的邻接点按升序排列 (2)在邻接表确定后,深度优先和宽度优先遍历序列唯一 (3)这里的遍历,均从顶点1开始2给出图G:(1)画出G的邻接表表示图;(2)根据你画出的邻接表,以顶点为根,画出G的深度优先生成树和广度优先生成树。3105784216912534768910(2)深度优先生成树 (3)宽度优先生成树123465897103.在什么情况下,P

2、rim算法与Kruskual算法生成不同的MST?答在有相同权值边时生成不同的MST,在这种情况下,用Prim或Kruskal也会生成不同的MST4已知一个无向图如下图所示,要求分别用Prim和Kruskal算法生成最小树(假设以为起点,试画出构造过程)。1265432010116618101459答Prim算法构造最小生成树的步骤如24题所示,为节省篇幅,这里仅用Kruskal算法,构造最小生成树过程如下:(下图也可选(2,4)代替(3,4),(5,6)代替(1,5))523916116210156435G=(V,E)是一个带有权的连通图,则:(1)请回答什么是G的最小生成树; (2)G为下

3、图所示,请找出G的所有最小生成树。1435292875644 28题图答(1)最小生成树的定义见上面26题(2)最小生成树有两棵。(限于篇幅,下面的生成树只给出顶点集合和边集合,边以三元组(Vi,Vj,W)形式),其中W代表权值。V(G)=1,2,3,4,5 E1(G)=(4,5,2),(2,5,4),(2,3,5),(1,2,7);E2(G)=(4,5,2),(2,4,4),(2,3,5),(1,2,7)6请看下边的无向加权图。 (1)写出它的邻接矩阵。(2)按Prim算法求其最小生成树,并给出构造最小生成树过程中辅助数组的各分量值。辅助数组内各分量值: YClosedge2345678 U

4、 V.-UVexLowcostVexLowcostVexLowcostVexLowcostVexLowcostVexLowcostVexLowcostVexLowcost7已知世界六大城市为:北京(Pe)、纽约(N)、巴黎(Pa)、 伦敦(L) 、 东京(T) 、 墨西哥(M),下表给定了这六大城市之间的交通里程: 世界六大城市交通里程表(单位:百公里)PENPALTMPE109828121124N109585510832PA825839792L815539589T211089795113M124329289113 (1)画出这六大城市的交通网络图;(2)画出该图的邻接表表示法;(3)画出该图

5、按权值递增的顺序来构造的最小(代价)生成树.8已知顶点1-6和输入边与权值的序列(如右图所示):每行三个数表示一条边的两个端点和其权值,共11行。请你:(1)采用邻接多重表表示该无向网,用类PASCAL语言描述该数据结构,画出存储结构示意图,要求符合在边结点链表头部插入的算法和输入序列的次序。 (2)分别写出从顶点1出发的深度优先和广度优先遍历顶点序列,以及相应的生成树。(3)按prim算法列表计算,从顶点1始求最小生成树,并图示该树。1 2 51 3 8 1 4 32 4 62 3 2 3 4 43 5 13 6 104 5 74 6 115 6 159用最短路径算法,求如下图中a到z的最短

6、通路。【(4)由顶点V1到顶点V3的最短路径。【中山大学 1994 四 (12分)】9用最短路径算法,求如下图中a到z的最短通路。65ced4bfghijza2249614223123459829题10已知图的邻接矩阵为:V1V2V3V4V5V6V7V8V9V10V10111000000V20001100000V30001010000V40000011010V50000001000V60000000110V70000000010V80000000001V90000000001V100000000000当用邻接表作为图的存储结构,且邻接表都按序号从大到小排序时,试写出:(1)以顶点V1为出发点的

7、唯一的深度优先遍历;(2)以顶点V1为出发点的唯一的广度优先遍历;(3)该图唯一的拓扑有序序列。11已知一图如下图所示:(1)写出该图的邻接矩阵;(2)写出全部拓扑排序;(3)以v1为源点,以v8为终点,给出所有事件允许发生的最早时间和最晚时间,并给出关键路径;(4)求V1结点到各点的最短距离。12(1)对于有向无环图,叙述求拓扑有序序列的步骤; (2)对于以下的图,写出它的四个不同的拓扑有序序列。二.算法设计题1设无向图G有n个顶点,m条边。试编写用邻接表存储该图的算法。(设顶点值用1n或0n-1编号)答: void CreatGraph (AdjList g)/建立有n个顶点和m 条边的无

8、向图的邻接表存储结构int n,m; scanf(%d%d,&n,&m);for (i =1,i=n;i+)/输入顶点信息,建立顶点向量scanf(&gi.vertex); gi.firstarc=null;for (k=1;kadjvex=j; p-next=gi.firstarc; gi.firstarc=p;/将边结点链入 p=(ArcNode *)malloc(sizeof(ArcNode);p-adjvex=i;p-next=gj.firstarc;gj.frstarc=p;/算法CreatGraph结束2请用流程图或类高级语言(c)表示算法。已知有向图有n个顶点,请写算法,根据用户

9、输入的偶对建立该有向图的邻接表。即接受用户输入的(以其中之一为0标志结束),对于每条这样的边,申请一个结点,并插入到的单链表中,如此反复,直到将图中所有边处理完毕。提示:先产生邻接表的n个头结点(其结点数值域从1到n)。答 void CreatAdjList(AdjList g)/建立有向图的邻接表存储结构int n;scanf(%d,&n);for (i=1;iadjvex=j;p-next=gi.firstarc;gi.firstarc=p;scanf(&v1,&v2); 3设有向G图有n个点(用1,2,n表示),e条边,写一算法根据其邻接表生成其反向邻接表,要求算法复杂性为O(n+e)。答void InvertAdjList(AdjList gin,gout)/将有向图的出度邻接表改为按入度建立的逆邻接表 for (i=1;i=n;i+)/设有向图有n

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 商业/管理/HR > 管理学资料

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