图结构
空空學長
非宁静无以致远,非淡泊无以明志
展开
-
数据结构-图的生成树问题
一、无向图的连通分量和生成树若图是连通的或强连通的,则从图中某一个顶点出发可以访问到图中所有顶点;若图是非连通的或非强连通图,则需从图中多个顶点出发搜索访问。而每一次从一个新的起始点出发进行搜索过程中得到的顶点访问序列恰为每个连通分量中的顶点集。1、生成树深度优先搜索遍历算法及广度优先搜索遍历算法中遍历图过程中历经边的集合和顶点集合一起构成连通图的极小连通子图。它是连通图的一颗生成树。生...原创 2019-08-28 10:53:23 · 5326 阅读 · 0 评论 -
数据结构-最短路径
图的最短路径问题最短路径问题是图论研究中的一个经典算法问题, 旨在寻找图(由结点和路径组成的)中两结点之间的最短路径。主要特点是以起始点为中心向外层层扩展,直到扩展到终点为止。Dijkstra算法能得出最短路径的最优解,但由于它遍历计算的节点很多,所以效率低。单源点最短路径是指:给定一个出发点(单源点)和一个有向网G=(V,E),求出源点到其它各顶点之间的最短路径。迪杰斯特拉(Dijkstr...原创 2019-08-28 14:56:17 · 1358 阅读 · 0 评论 -
数据结构-拓扑排序
拓扑排序1.定义给出有向图G=(V,E),对于V中的顶点的线性序列(vi1,vi2,…,vin),如果满足如下条件:若在G中从顶点 vi 到vj有一条路经,则在序列中顶点vi必在顶点 vj之前;则称该序列为 G的一个拓扑序列(Topological order)。构造有向图的一个拓扑序列的过程称为拓扑排序(Topological sort)。2.说明(1)在AOV网中,若不存在回路,则所有...原创 2019-09-29 17:08:31 · 341 阅读 · 0 评论 -
数据结构-图的遍历问题
图的遍历:从图中某个顶点出发游历图,访遍图中其余顶点,并且使图中的每个顶点仅被访问一次的过程。我们可以设置一个全局型标志数组visited来标志某个顶点是否被访问过,未访问的值为0,访问过的值为1。深度优先搜索遍历深度优先搜索遍历类似于树的先序遍历。假定给定图G的初态是所有顶点均未被访问过,在G中任选一个顶点i作为遍历的初始点,则深度优先搜索遍历可定义如下:(1)首先访问顶点i,并将其访问...原创 2019-09-29 17:15:54 · 1872 阅读 · 0 评论 -
数据结构-图的遍历代码
广度优先搜索1.准备工作:创建一个visited数组,用来记录已被访问过的顶点;创建一个队列,用来存放每一层的顶点;初始化图G。2.从图中的v0开始访问,将的visited[v0]数组的值设置为true,同时将v0入队。3.只要队列不空,则重复如下操作:(1)队头顶点u出队。(2)依次检查u的所有邻接顶点w,若visited[w]的值为false,则访问w,并将visited[w]置为t...原创 2019-09-29 17:17:27 · 1997 阅读 · 0 评论