




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第6章 图【例6-3】已知一个无向图的邻接表如图6-5所示,要求:(1)画出该无向图;(2)根据邻接表,分别写出用DFS(深度优先搜索)和BFS(广度优先搜索)算法从顶点V0开始遍历该图后所得到的遍历序列。图6-5 图的邻接表存储V6V0V1V5V3V4V22305604361121210250634解:(1)该无向图如图6-6所示。v0v1v2v3v4v6v5图6-6 无向图(2)根据该无向图的邻接表表示,从顶点V0开始的深度优先遍历序列为:V0、V2、V3、V1、V4、V6、V5。广度优先遍历序列为V0、V2、V5、V6、V1、V3、V4。从图的逻辑结构上来讲,从图中某个顶点开始的深度(或
2、广度)优先遍历序列不一定是唯一的。这是因为在逻辑结构中,并没有对每个顶点的所有邻接点规定它们之间的先后顺序,这样在搜索算法中选取第个邻接点和下一个邻接点时可能会有不同的结果。但是在存储结构中,明确地给出了邻接点的先后顺序,这时深度优先和广度优先遍历序列就是唯一的。【例6-4】对于如图6-8所示的带权无向图,用图示说明:(1)利用Prim算法从顶点a开始构造最小生成树的过程;3e1fdcbag97946218548图6-8 带权无向图(2)利用Kruskal算法构造最小生成树的过程;1 / 8解:(1)利用Prim算法从顶点a开始构造最小生成树的过程如图6-9所示。2a2aaee1g连通g连通e
3、初始状态da3da33da22241e41e1egfgg6fb连通b连通d连通f图6-9 用Prim算法构造最小生成树的过程3aefdcbg连通c21461(2)利用Kruskal算法构造最小生成树的过程如图6-10所示。aefdcbg初始状态aefdcbg增加第2条边11aefdcbg增加第1条边13aefdcbg增加第5条边21413aefdcbg增加第4条边211aefdcbg增加第3条边211图6-10 用Kruskal算法构造最小生成树的过程3aefdcbg增加第6条边21461习题6一、单项选择题 1. 在具有n个顶点的有向图中,若所有顶点的出度之和为s,则所有顶点的入度之和为(A
4、 )。A. sB. s-1C. s+1D. n2. 在一个具有n个顶点的有向图中,若所有顶点的出度数之和为s,则所有顶点的度数之和为( D)。A. s B. s-1C. s+1D. 2s3. 在一个具有n个顶点的无向图中,若具有e条边,则所有顶点的度数之和为(D )。A. n B. eC. n+eD. 2e 4. 在一个具有n个顶点的无向完全图中,所含的边数为(C )。A. nB. n(n-1)C. n(n-1)/2D. n(n+1)/2 5. 在一个具有n个顶点的有向完全图中,所含的边数为( B )。A. n B. n(n-1) C. n(n-1)/2 D. n(n+1)/26. 在一个无向
5、图中,若两顶点之间的路径长度为k,则该路径上的顶点数为( B )。A. k B. k+1 C. k+2 D. 2k7. 对于一个具有n个顶点的无向连通图,它包含的连通分量的个数为( B )。A. 0 B. 1 C. n D. n+18. 若一个图中包含有k个连通分量,若要按照深度优先搜索的方法访问所有顶点,则必须调用( A)次深度优先搜索遍历的算法。A. k B. 1 C. k-1 D. k+1 9. 若要把n个顶点连接为一个连通图,则至少需要( AC )条边。A. n B. n+1 C. n-1 D. 2n 10. 在一个具有n个顶点和e条边的无向图的邻接矩阵中,表示边存在的元素(又称为有效
6、元素)的个数为( C D )。A. n B. n´e C. e D. 2´e 11. 在一个具有n个顶点和e条边的有向图的邻接矩阵中,表示边存在的元素个数为( C )。A. n B. n´e C. e D. 2´e 12. 在一个具有n个顶点和e条边的无向图的邻接表中,边结点的个数为( D )。A. n B. n´e C. e D. 2´e 13. 在一个具有n个顶点和e条边的有向图的邻接表中,保存顶点单链表的表头指针向量的大小至少为( A )。A. n B. 2n C. e D. 2e 14. 在一个无权图的邻接表表示中,每个边结点
7、至少包含( B )域。A. 1 B. 2 C. 3 D. 4 15. 对于一个有向图,若一个顶点的度为k1,出度为k2,则对应邻接表中该顶点单链表中的边结点数为( B )。A. k1 B. k2 C. k1-k2 D. k1+k2 16. 对于一个有向图,若一个顶点的度为k1,出度为k2,则对应逆邻接表中该顶点单链表中的边结点数为( C )。A. k1 B. k2 C. k1-k2 D. k1+k2 17. 对于一个无向图,下面( BA )种说法是正确的。A. 每个顶点的入度等于出度 B. 每个顶点的度等于其入度与出度之和C. 每个顶点的入度为0 D. 每个顶点的出度为0 18. 在一个有向图
8、的邻接表中,每个顶点单链表中结点的个数等于该顶点的( D A )。A. 出边数 B. 入边数 C. 度数 D. 度数减1 19. 若一个图的边集为(A,B),(A,C),(B,D),(C,F),(D,E),(D,F),则从顶点A开始对该图进行深度优先搜索,得到的顶点序列可能为( DB )。A. A,B,C,F,D,E B. A,C,F,D,E,BC. A,B,D,C,F,E D. A,B,D,F,E,C 20. 若一个图的边集为(A,B),(A,C),(B,D),(C,F),(D,E),(D,F),则从顶点A开始对该图进行广度优先搜索,得到的顶点序列可能为( A D)。A. A,B,C,D,E
9、,F B. A,B,C,F,D,EC. A,B,D,C,E,F D. A,C,B,F,D,E 21. 若一个图的边集为<1,2>,<1,4>,<2,5>,<3,1>,<3,5>,<4,3>,则从顶点1开始对该图进行深度优先搜索,得到的顶点序列可能为( A )。A. 1,2,5,4,3 B. 1,2,3,4,5C. 1,2,5,3,4 D. 1,4,3,2,5 22. 若一个图的边集为<1,2>,<1,4>,<2,5>,<3,1>,<3,5>,<4,3>
10、,则从顶点1开始对该图进行广度优先搜索,得到的顶点序列可能为( AC ).A. 1,2,3,4,5 B. 1,2,4,3,5C. 1,2,4,5,3 D. 1,4,2,5,3 23. 由一个具有n个顶点的连通图生成的最小生成树中,具有( B )条边。A. n B. n-1 C. n+1 D. 2´n 24. 已知一个有向图的边集为<a,b>,<a,c>,<a,d>,<b,d>,<b,e>,<d,e>,则由该图产生的一种可能的拓扑序列为( A )。A. a,b,c,d,e B. a,b,d,e,b C. a,c,b
11、,e,d D. a,c,d,b,e二、填空题 1. 在一个图中,所有顶点的度数之和等于所有边数的_2_倍。 2. 在一个具有n个顶点的无向完全图中,包含有_n(n-1)/2_条边,在一个具有n个顶点的有向完全图中,包含有_n(n-1)_条边。 3. 假定一个有向图的顶点集为a,b,c,d,e,f,边集为<a,c>, <a,e>, <c,f>, <d,c>, <e,b>, <e,d>,则出度为0的顶点个数为_2_,入度为1的顶点个数为_6_。 4. 在一个具有n个顶点的无向图中,要连通所有顶点则至少需要_n_N-1_条边。
12、5. 表示图的两种存储结构为_顺序_和_链式_。邻接表和邻接矩阵 6. 在一个连通图中存在着_1_个连通分量。 7. 图中的一条路径长度为k,该路径所含的顶点数为_k+1_。 8. 若一个图的顶点集为a,b,c,d,e,f,边集为(a,b),(a,c),(b,c),(d,e),则该图含有_3_个连通分量。 9. 对于一个具有n个顶点的图,若采用邻接矩阵表示,则矩阵大小至少为_n_´_n_。 10. 对于具有n个顶点和e条边的有向图和无向图,在它们对应的邻接表中,所含边结点的个数分别为_2e_和_e_。 11. 在有向图的邻接表和逆邻接表表示中,每个顶点邻接表分别链接着该顶点的所有_出
13、边_和_入边_结点。 12. 对于一个具有n个顶点和e条边的无向图,当分别采用邻接矩阵和邻接表表示时,求任一顶点度数的时间复杂度分别为_O(ne)O(n)_和_O(n2)O(e/n)_。 O(n2),O(e) 13. 假定一个图具有n个顶点和e条边,则采用邻接矩阵和邻接表表示时,其相应的空间复杂度分别为_O(n2)_和_O(n+e)_。 14. 一个图的边集为(a,c),(a,e),(b,e),(c,d),(d,e),从顶点a出发进行深度优先搜索遍历得到的顶点序列为_acdeb_,从顶点a出发进行广度优先搜索遍历得到的顶点序列为_。 15. 一个图的边集为<a,c>,<a,e
14、>,<c,f>,<d,c>,<e,b>,<e,d>,从顶点a出发进行深度优先搜索遍历得到的顶点序列为_,从顶点a出发进行广度优先搜索遍历得到的顶点序列为_。 16. 图的_深度_优先搜索遍历算法是一种递归算法,图的_广度_优先搜索遍历算法需要使用队列。 17. 对于一个具有n个顶点和e条边的连通图,其生成树中的顶点数和边数分别为_n_和_en-1_。 18. 若一个连通图中每个边上的权值均不同,则得到的最小生成树是_唯一的_(唯一/不唯一)的。 19. 根据图的存储结构进行某种次序的遍历,得到的顶点序列是唯一(唯一/不唯一)的。 20. 假
15、定一个有向图的边集为<a,c>,<a,e>,<c,f>,<d,c>,<e,b>,<e,d>,对该图进行拓扑排序得到的顶点序列为_aebdcf_。 三、应用题1. 对于一个无向图6-11(a),假定采用邻接矩阵表示,试分别写出从顶点0出发按深度优先搜索遍历得到的顶点序列和按广度优先搜索遍历得到的顶点序列。 2. 对于一个有向图6-11(b),假定采用邻接表表示,并且假定每个顶点单链表中的边结点是按出边邻接点序号从大到小的次序链接的,试分别写出从顶点0出发按深度优先搜索遍历得到的顶点序列和按广度优先搜索遍历得到的顶点序列。 注
16、:每一种序列都是唯一的,因为都是在存储结构上得到的。 图6-110165948372(a)603451278(b)3. 已知一个无向图的邻接矩阵如图6-12(a)所示,试写出从顶点0出发分别进行深度优先和广度优先搜索遍历得到的顶点序列。 4. 已知一个无向图的邻接表如图6-12(b)所示,试写出从顶点0出发分别进行深度优先和广度优先搜索遍历得到的顶点序列。(a) (b)图6-125. 已知图6-13所示的一个网,按照Prim方法,从顶点v1 出发,表示出该网的最小生成树的产生过程。 6. 已知图6-13所示的一个网,按照Kruskal方法,表示出该网的最小生成树的产生过程。图6-13V1V2V3V4V5V6V7605065404570505242307. 图6-14所示为一个有向网图及其带权邻接矩阵,要求对有向图采用D
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 糖尿病医学诊疗要点
- 传染疾病的预防
- 《幼儿园教育基础》课件-02第二单元
- 痤疮护理查房要点与流程
- 罐头项目可行性研究报告
- 护理常用评估单分类与应用
- 2025届山东省淄博市临淄区七下数学期末联考试题含解析
- 高端护肤直播带货行业跨境出海项目商业计划书
- 高空作业与检修机器人行业跨境出海项目商业计划书
- 高科技冷冻溶脂技术行业跨境出海项目商业计划书
- 卫生院三基三严培训计划
- 中央空调改造项目施工方案
- 2025年巴中发展控股集团限公司招聘高频重点提升(共500题)附带答案详解
- 年产10万吨高盐稀态发酵酱油车间设计
- 2024-2030年中国对苯二甲酸工业市场发展前景调研及投资战略分析报告
- 《护理心理学》试题及参考答案(四)
- 社区食堂租赁合同样本
- DB52T 1657-2022 磷石膏模盒通 用技术要求
- 2024年中级注册安全工程师《安全生产管理》真题及答案
- 2024年居间合作备忘录:双方协商达成
- 厨房食材验收标准
评论
0/150
提交评论