图有两种存储方式,邻接表和邻接矩阵。 稀疏图一般用邻接链表,稠密图一般用邻接矩阵。 具体实现如下: ...
分类:
其他好文 时间:
2017-06-25 19:33:36
阅读次数:
164
http://mp.weixin.qq.com/s/a8klpzM5iam0_JYSw7-U4g 我们在设计数据库的时候,是否会突破常规,找到最适合自己需求的设计方案,下面来举个例子: 常用的邻接表设计,都会添加 一个 parent_id 字段,比如区域表(国、省、市、区): CREATE TABL ...
分类:
数据库 时间:
2017-06-22 19:42:33
阅读次数:
245
链接:http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&category=24&page=show_problem&problem=1927 //邻接表+队列 #include <iostream> #inclu ...
分类:
其他好文 时间:
2017-06-21 20:00:49
阅读次数:
156
Tips:本题解是【随便搞搞 1】Prim算法的学习和使用 的姊妹篇,希望先阅读Prim算法。 预习及预备知识: 克鲁斯卡尔(Kruskal)算法是实现图的最小生成树最常用的算法。 大家知道,存储图的方法有2种:邻接矩阵表示法、邻接表表示法; 这里介绍的是介于这两种之间的一种方法:边接存储法(即直接 ...
分类:
其他好文 时间:
2017-06-18 14:23:48
阅读次数:
219
十字链表是有向图的还有一种链式存储结构。能够看成是将有向图的邻接表和逆邻接表(仅仅考虑入度)结合起来得到的一种链表。在十字链表中,相应于有向图中每个顶点有一个节点,每一条弧也有一个结点。 顶点之间是数组顺序存储,而弧是链式存储。 弧结点结构: 顶点结点结构: 十字链表形态: 实现: /******* ...
分类:
其他好文 时间:
2017-06-06 19:55:37
阅读次数:
263
3.1最短路之单源最短路(SPFA) 松弛:常听人说松弛,一直不懂,后来明白其实就是更新某点到源点最短距离。 邻接表:表示与一个点联通的所有路。 如果从一个点沿着某条路径出发,又回到了自己,而且所经过的边上的权和小于0, 就说这条路是一个负权回路。 回归正题,SPFA是bellman-ford的一种 ...
分类:
编程语言 时间:
2017-06-06 14:17:56
阅读次数:
237
之前我们介绍过图的邻接矩阵存储法,它的空间和时间复杂度都是N2,如今我来介绍第二种存储图的方法:邻接表,这样空间和时间复杂度就都是M。对于稀疏图来说,M要远远小于N2。先上数据。例如以下。 1 2 3 4 5 6 4 5 1 4 9 4 3 8 1 2 5 2 4 6 1 3 7 第一行两个整数n ...
分类:
编程语言 时间:
2017-05-30 15:58:30
阅读次数:
249
点此进入原题 算法:树形DP 题解: 一道树形dp。由题意可知,这题是树形结构题。我们设f[i][0],表示不访问i号节点,f[i][1]表示访问i号节点。因为访问了i号节点,则不能访问i的孩子节点,所以可以得出下面的式子: f[i][0] += max{f[k][0], f[k][1]} f[i] ...
分类:
其他好文 时间:
2017-05-29 19:18:06
阅读次数:
106
之前我们介绍过图的邻接矩阵存储法,它的空间和时间复杂度都是N2,现在我来介绍另外一种存储图的方法:邻接表,这样空间和时间复杂度就都是M。对于稀疏图来说,M要远远小于N2。先上数据,如下。 1 2 3 4 5 6 4 5 1 4 9 4 3 8 1 2 5 2 4 6 1 3 7 1 2 3 4 5 ...
分类:
其他好文 时间:
2017-05-25 19:52:12
阅读次数:
255