(我一个蒟蒻.分不清这两个姐妹qwq 邻接表: 1 -> 2 -> 3 -> 5 2 -> 3 3 -> 4 4 -> 1 -> 5 5 ->^ 链式前向星: edge[0].to = 2; edge[0].next = -1; head[1] = 0; edge[1].to = 3; edge[1 ...
分类:
其他好文 时间:
2019-04-28 20:28:44
阅读次数:
173
2018南京I题: dinic,链式前向星,数组队列,当前弧优化,不memset全部数组,抛弃满流点,bfs只找一条增广路,每次多路增广 2016青岛G 原始对偶算法+dijkstra正权化 EK+spfa ...
分类:
其他好文 时间:
2019-04-27 10:06:08
阅读次数:
111
链式前向星备忘 自以为比较好理解的一种写法 初始化 建边 遍历节点$x?$连的边 参考 "链式前向星基本原理" ...
分类:
其他好文 时间:
2019-04-14 14:23:10
阅读次数:
99
原文链接 首先我们了解一种数据结构,前向星,是以存边的方式存图的。我们把边集数组中的每一条边按照起点从小到大排序,如果起点相同就按照终点从小到大排序,并记录下以某个点为起点的所有边在数组中的起始位置和存储长度,那么前向星就构造好了.用len[i]来记录所有以i为起点的边在数组中的存储长度.用head ...
分类:
其他好文 时间:
2019-04-13 11:13:20
阅读次数:
180
1.并查集:要注意一个问题,父节点的指向要唯一,不能中途突然改变某个父节点,并且改变之后从一个集合中的集合变成了另一个集合中的元素。 2.输入输出元素比较多,并且每个元素又有某种联系的话,优先使用结构体。 3.保存图的时候,可以选用vector和链式前向星。 4.使用bfs的时候,要避免某个点循环重 ...
分类:
其他好文 时间:
2019-03-28 16:54:36
阅读次数:
171
Dijkstra+ 链式前向星+ 优先队列 Dijkstra算法 Dijkstra最短路算法,个人理解其本质就是一种广度优先搜索。先将所有点的最短距离Dis[ ]都刷新成∞(涂成黑色),然后从起点x (Dis[x]= 0, Dis[]值最小 )开始查询;先将x 加入(涂成灰色),对x 的所有边进行遍 ...
分类:
其他好文 时间:
2019-03-18 13:42:56
阅读次数:
180
int n; int h[MAX_N], nxt[MAX_N * MAX_N], to[MAX_N * MAX_N], val[MAX_N * MAX_N], tot; void Make_Edge(int u, int v, int w) { to[++tot] = v; val[tot] = w... ...
分类:
其他好文 时间:
2019-03-17 01:08:38
阅读次数:
144
#include #include #include #include #define FORa(i,s,e) for(int i=s;i=e;i--) #define gc getchar()//pa==pb&&(pb=(pa=buf)+fread(buf,1,10000,stdin),pa==p... ...
分类:
其他好文 时间:
2019-02-14 20:50:39
阅读次数:
196
#include #include #include #include #define FORa(i,s,e) for(int i=s;i=e;i--) #define File(name) freopen(name".in","r",stdin),freopen(name".out","w",st... ...
分类:
其他好文 时间:
2019-02-14 20:44:58
阅读次数:
311
题意:n个人,m个信息,每行的信息是3个数字,A,B,C,表示B比A多出来的糖果不超过C个,问你,n号人最多比1号人多几个糖果 解题关键:差分约束系统转化为最短路,B-A>=C,建有向边即可,与dijkstra中的d[v]>=d[u]+C相同,即可求解。 ...
分类:
其他好文 时间:
2019-02-04 08:56:25
阅读次数:
157