- 1、本文档共75页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
7.1 图的定义和术语 图(Graph):图G是由两个集合V(G)和E(G)组成的,记为G=(V,E)。其中:V(G)是顶点的非空有限集;E(G)是边的有限集合,边是顶点的无序对或有序对。 有向图:有向图G是由两个集合V(G)和E(G)组成的。其中:V(G)是顶点的非空有限集;E(G)是有向边(也称弧)的有限集合,弧是顶点的有序对,记为v,w,v,w是顶点,v为弧尾,w为弧头。 无向图:无向图G是由两个集合V(G)和E(G)组成的。其中:V(G)是顶点的非空有限集;E(G)是边的有限集合,边是顶点的无序对,记为(v,w)或(w,v),并且(v,w)=(w,v)。 特点 无向图中顶点Vi的度为第i个单链表中的结点数 有向图中 顶点Vi的出度为第i个单链表中的结点个数 顶点Vi的入度为整个单链表中邻接点域值是i的结点个数 逆邻接表:有向图中对每个结点建立以Vi为头的弧的单链表 2、深度优先遍历算法 一、拓扑排序 二、关键路径 4、求关键路径步骤 求Ve(i) 求Vl(j) 求e(i) 求l(i) 计算l(i)-e(i) void BFSTraverse(Graph G) { for (v=0;vG.vexnum;++v) visited[v]=FALSE; InitQueue(Q); /*置空的辅助队列Q* for (v=0;vG.vexnum;++v) if (!visited[v]) { visited[v]=TRUE; visit(v); EnQucue(Q,v); /*v入队列*/ while (!QueueEmpty(Q)){ DeQueue(Q,u); /*队头元素出队并置为u*/ for(w=FistAdjVex(G,u); w; w=NextAdjVex(G,u,w)) if (!visited[w]) { visited[w]=TRUE; visit(w); EnQueue(Q,w);} } } } 7.4 生成树 一、无向图的连通分量和生成树 1、无向图的连通分量 对于连通图,一次调用DFS或BFS即可遍历图的全部顶点;对于非连通图,多次调用DFS或BFS才能遍历完图的全部顶点。每次调用所得的顶点访问序列就是各连通分量的顶点集。 2、生成树 对于连通图,调用DFS或BFS所经过的边的集合和图的全部顶点构成了图的极小连通子图,即连通图的一棵生成树。 3、生成森林 对于非连通图,每个连通分量的顶点集和所经过的边一起构成若干棵生成树,这些连通图的生成树构成非连通图的生成森林。 一、生成树:所有顶点均由边连接在一起,但不存在回路的图。 设E(G)为连通图G中所有边的集合,则从图中任一顶点出发遍历图时,必定将E(G)分成两个集合T(G)和B(G),其中T(G)是遍历图过程中历经的边的集合;B(G)是剩余的边的集合。显然,T(G)和图G中所有顶点一起构成连通图G的极小连通子图,它是连通图的一棵生成树,并且由深度优先搜索得到的为深度优先生成树;由广度优先搜索得到的为广度优先生成树。 对于非连通图,通过这样的遍历,将得到的是生成森林。 一个图可以有许多棵不同的生成树,生成树具有以下共同特点: 1、生成树的顶点个数与图的顶点个数相同 2、生成树是图的极小连通子图 3、一个有n个顶点的连通图的生成树有n-1条边 4、生成树中任意两个顶点间的路径是唯一的 5、在生成树中再加一条边必然形成回路 6、含n个顶点n-1条边的图不一定是生成树 V1 V2 V4 V5 V3 V7 V6 V8 例 深度遍历:V1? V2 ?V4 ? V8 ?V5 ?V3 ?V6 ?V7 V1 V2 V4 V5 V3 V7 V6 V8 深度优先生成树 V1 V2 V4 V5 V3 V7 V6 V8 广度优先生成树 V1 V2 V4 V5 V3 V7 V6 V8 V1 V2 V4 V5 V3 V7 V6 V8 广度遍历:V1? V2 ?V3 ? V4 ?V5 ?V6 ?V7 ?V8 例 A B L M C F D E G H K I J A B L M C F J D E G H K I 深度优先生成森林 1、问题提出: 要在n个城市间建立通信联络网,顶点表示城市,边上的权值表示城市间建立通信线路所需花费的代价。 希望找到一棵生成树,它的所有边上的权值之和(即建立该通信网所需花费的总代价)最小—
您可能关注的文档
- 第4章常用机械传动探究.ppt
- 第8章模拟量的输入输出探究.ppt
- 第二课_展示自己的职业风采探究.ppt
- 第8章南邮计算机控制系统设计与实现探究.ppt
- 第4章齿轮机构48学时探究.ppt
- 第8章配位化合物探究.ppt
- 第8章企业战略评价与选择探究.ppt
- 给予树课件浅析.ppt
- 第4章齿轮机构new探究.ppt
- 第4章齿轮机构探究.ppt
- 北师大版(2024)八年级数学上册课件 3.2 平面直角坐标系 第2课时 点的坐标特征.pptx
- 北师大版(2024)八年级数学上册课件 3.2 平面直角坐标系 第3课时 建立适当的平面直角坐标系.pptx
- 北师大版(2024)八年级数学上册课件 4.3 一次函数的图象 第1课时 正比例函数的图象及性质.pptx
- (人教A版数学选择性必修三)讲义第15讲7.1.1条件概率(学生版+解析).docx
- (人教A版数学选择性必修三)讲义第19讲8.1成对数据的统计相关性(8.1.1变量的相关关系+8.1.2样本相关系数)(学生版+解析).docx
- 北师大版(2024)八年级数学上册课件 5.2 二元一次方程组的解法 第2课时 加减消元法.pptx
- (人教A版数学选择性必修一)2025年秋季学期讲义第01讲1.1.1空间向量及其线性运算(学生版+教师版).docx
- 北师大版(2024)八年级数学上册课件 5.2 二元一次方程组的解法 第1课时 代入消元法.pptx
- 北师大版(2024)八年级数学上册课件 5.3 二元一次方程组的应用 第3课时 二元一次方程组的应用(3).pptx
- 北师大版(2024)八年级数学上册课件 5.4 二元一次方程与一次函数 第2课时 用二元一次方程组确定一次函数表达式.pptx
文档评论(0)