![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构——图
文章平均质量分 80
iteye_7333
这个作者很懒,什么都没留下…
展开
-
图的存储结构
原文链接:http://andy100861.blog.163.com/blog/static/98551191200992202558438/图的存储结构 图的存储结构除了要存储图中各个顶点的本身的信息外,同时还要存储顶点与顶点之间的所有关系(边的信息),因此,图的结构比较复杂,很难以数据元素在存储区中的物理位置来表示元素之间的关系,但也正是由于其任意的特性,故物理表示方法很多。常用...原创 2014-06-13 11:17:50 · 119 阅读 · 0 评论 -
图 邻接矩阵表示法 代码实现 java
package abc.Dijkstra.pack3;public class MGraph { int vertexNum; int [][] adjMatrix; MGraph(int vertexNum) { this.vertexNum = vertexNum; adjMatrix = new int[vertexNum][vertexNu...原创 2014-06-13 11:50:11 · 412 阅读 · 0 评论 -
图 邻接表 Java 实现
package abc.Dijkstra.pack3;import java.util.ArrayList;import java.util.List;public class AlGraph { List<HeadNode> headNodes = new ArrayList<HeadNode>(); void add...原创 2014-06-13 15:23:47 · 305 阅读 · 0 评论 -
图的深度优先遍历 邻接表(头结点边结点)
8.3.1深度优先搜索遍历 图的深度优先搜索遍历类似于二叉树的深度优先搜索遍历。其基本思想如下:假定以图中某个顶点Vi为出发点,首先访问出发点,然后选择一个Vi的未访问过的邻接点Vj,以Vj为新的出发点继续进行深度优先搜索,直至图中所有顶点都被访问过。显然,这是一个递归的搜索过程。 现以图8.15为例说明深度优先搜索过程。假定V1是出发点,首先访问V1。因V1有两个邻接...2014-06-16 16:59:53 · 2707 阅读 · 0 评论 -
图的深度优先遍历 邻接表(边结点存在列表中)
8.3.1深度优先搜索遍历 图的深度优先搜索遍历类似于二叉树的深度优先搜索遍历。其基本思想如下:假定以图中某个顶点Vi为出发点,首先访问出发点,然后选择一个Vi的未访问过的邻接点Vj,以Vj为新的出发点继续进行深度优先搜索,直至图中所有顶点都被访问过。显然,这是一个递归的搜索过程。 现以图8.15为例说明深度优先搜索过程。假定V1是出发点,首先访问V1。因V1有两个邻接点...2014-06-16 17:02:12 · 2175 阅读 · 0 评论 -
图的存储结构 比较 邻接矩阵、邻接表、十字链表和邻接多重表
邻接矩阵:可以存储无向图,也可存储有向图。构造一个具有n个顶点和e条边的无向图的时间复杂度O(n*n+e*n),其中对灵接矩阵的初始化消耗了O(n*n)的时间。 邻接表:图的一种链式存储结构。可以存储无向图和有向图,有向图可以建立“逆邻接表”。构造邻接表或者“逆邻接表”时间复杂度O(n+e),n个顶点+e条边。邻接表相对于邻接矩阵如果是边稀疏图的话比较节约空间。但是邻接表要确定Vi和Vj...2014-06-17 15:56:13 · 1071 阅读 · 0 评论 -
Dijkstra 最短路径
参照严蔚敏 吴伟民《数据结构(C语言版)》P187. 给出两个程序片段:图都对应下面的图第一个:邻接矩阵 的实现。第二个:邻接表 的实现。 理解的关键是:1,第一条最短的路径就是v0-v2。2,次短路径是,也是到Vk的最短路径,要么是V0-Vk,要么是V0-V2-Vk。基于代码整理:package abc.graph;import java.ut...原创 2014-06-19 16:20:15 · 107 阅读 · 0 评论