今天复习了图的知识,稍作回顾整理。 描述一个图,无非一个点集V,一个边集E. 图的存储有邻接矩阵(适用于稠密图),邻接表(适用于稀疏图),十字链表(有向图),多重邻接表(无向图)。当我们说边<A,B>时,A是弧尾,B是弧头。 图的遍历可以用DFS{深度优先搜索}或者BFS{广度优先搜索}实现。这个时 ...
分类:
其他好文 时间:
2018-09-19 01:19:14
阅读次数:
160
图的存储 模板 : 点数目 : 边数目 拓扑排序 模板 : 拓扑序 int ts[nsz],pt=0; bool topsort(){ rep(i,1,n)if(in[i]==0)que[++qt]=i,ts[++pt]=i; while(qh ...
分类:
其他好文 时间:
2018-08-31 21:25:24
阅读次数:
239
一、概念及分类 二、图的存储结构 1、邻接矩阵 顶点: 弧: 边: 表达式语句: 2、邻接表 逆邻接表: 3、十字链表 4、邻接多重表 三、图的权值概念及遍历 权值: 图的遍历: 1.深度优先搜索 2.广度优先搜索 3.图的最小生成树 1)普利姆算法 2)克鲁斯卡尔算法: 四、补充知识点 1、课程下 ...
分类:
编程语言 时间:
2018-08-30 01:57:09
阅读次数:
291
邻接矩阵的缺点:边数相对顶点较少的图,极大地浪费了存储空间。 把数组与链表相结合的存储方法称为邻接表。(Adjacency List) 邻接表的处理办法: 图1 无向图的邻接表结构 data是数据域,存储顶点的信息,firstedge是指针域,指向边表的第一个结点,即此顶点的第一个邻接点。 边表结点 ...
分类:
其他好文 时间:
2018-08-28 23:45:20
阅读次数:
230
方法一:邻接矩阵 简单明了,但存储稀疏图时空间浪费过多。 方法二:vector 为每一个结点开一个链表,储存与之相邻的结点。链表用vector动态数组实现。 方法三:邻接表 为每一个结点开一个链表,储存与之相邻的边。链表由数组实现。假设一个图共有n个结点和m条边,则建立数组head[1-n]记录编号 ...
分类:
其他好文 时间:
2018-08-27 21:30:04
阅读次数:
183
一:图的抽象数据类型 二:图的存储结构讨论 三:图的存储结构(1) 邻接矩阵 (一)无向图 (二)有向图 (三)网 (四)实现无向网图创建 四:图的存储结构(2) 邻接表 邻接表处理办法 (一)无向图 (二)有向图 (三)带权值的网图 (四)实现无向网图 注意:上面的两种存储结构是针对顶点,下面的三 ...
分类:
其他好文 时间:
2018-08-15 14:50:45
阅读次数:
230
申明:本文中提及的所有存图结构都用静态数组实现,而非链表。 0.什么是链式前向星 链式前向星是一种存图的结构,例如前向星、邻接矩阵、边表、邻接表等也是存图的结构。 1.链式前向星有何优点 链式前向星:空间利用率高,在各类竞赛中常被使用。 邻接矩阵:需要开N*N的空间,在各类竞赛中常被卡。 邻接表:空 ...
分类:
编程语言 时间:
2018-08-13 14:00:23
阅读次数:
522
2-3 对于一个具有N个顶点的无向图,若采用邻接矩阵表示,则该矩阵的大小是: (2分) 作者: DS课程组 单位: 浙江大学 2-4 若一个有向图用邻接矩阵表示,则第i个结点的入度就是: (2分) 作者: DS课程组 单位: 浙江大学 2-5 下面关于图的存储的叙述中,哪一个是正确的? (2分) 作 ...
分类:
编程语言 时间:
2018-06-23 14:35:46
阅读次数:
1108
1.学习总结(2分) 1.1图的思维导图 图的存储结构 图的遍历 最小生成树 最短路径 拓扑排序、关键路径,这些知识点需要都梳理。 1.2 图结构学习体会 谈谈你对图结构中的几个经典算法学习体会。具体有: 深度遍历算法 广度遍历算法 Prim和Kruscal算法 Dijkstra算法 拓扑排序算法 ...
分类:
其他好文 时间:
2018-06-17 23:19:57
阅读次数:
191
一、引言 在了解GraphX之前,需要先了解关于通用的分布式图计算框架的两个常见问题:图存储模式和图计算模式。 二、图存储模式 巨型图的存储总体上有边分割和点分割两种存储方式。2013年,GraphLab2.0将其存储方式由边分割变为点分割,在性能上取得重大提升,目前基本上被业界广泛接受并使用。 2 ...
分类:
其他好文 时间:
2018-05-16 20:54:39
阅读次数:
155