码迷,mamicode.com
首页 >  
搜索关键字:邻接表 删除顶点 稀疏矩阵    ( 1126个结果
通用邻接表---vector实现
手写邻接表很麻烦。。。。所以写了一个邻接表模板,方便用vector实现,使用时看看代码注释即可#include #include #include #include #define INF 99999999;#define max_point 1000000 ////定义总共的节点数目 using ...
分类:其他好文   时间:2014-09-24 21:39:57    阅读次数:199
【转载】深度优先搜索代码
本文章代码中的图用邻接矩阵来表示,所以算法复杂度为O(V^2)。如果用邻接表来表示,那么算法的复杂度为O(V+E)。DFS可用来判断图中是否有环,展现无向图中的连通分支。通过DFS,形成一个由多棵深度优先树所组成的深度优先森林。将原先图中的边添加到该森林之后,可以将所有边定义为以下四类:1. 树边:...
分类:其他好文   时间:2014-09-19 19:00:25    阅读次数:130
POJ 2391.Ombrophobic Bovines 解题报告
实际上是求最短的避雨时间。首先将每个点拆成两个,一个连接源点,一个连接汇点,连接源点的点的容量为当前单的奶牛数,连接汇点的点为能容纳的奶牛数。floyd求任意两点互相到达的最短时间,二分最长时间,最大流判断是否可行。注意路径时间会超过int/* 最大流SAP 邻接表 思...
分类:其他好文   时间:2014-09-16 00:07:29    阅读次数:346
poj 1087.A Plug for UNIX 解题报告
网络流,关键在建图建图思路在代码里/* 最大流SAP 邻接表 思路:基本源于FF方法,给每个顶点设定层次标号,和允许弧。 优化: 1、当前弧优化(重要)。 1、每找到以条增广路回退到断点(常数优化)。 2、层次出现断层,无法得到新...
分类:其他好文   时间:2014-09-15 22:35:49    阅读次数:271
poj 1273.PIG 解题报告
网络流关键是建图,思路在代码里/* 最大流SAP 邻接表 思路:基本源于FF方法,给每个顶点设定层次标号,和允许弧。 优化: 1、当前弧优化(重要)。 1、每找到以条增广路回退到断点(常数优化)。 2、层次出现断层,无法得到新流(...
分类:其他好文   时间:2014-09-15 21:06:09    阅读次数:196
POJ--3268--Silver Cow Party【SPFA+邻接表】
题意:一些牛要去某一点參加聚会,然后再回到自己家,路是单向的,问花费时间最多的那头牛最少须要花费多长时间。思路:从聚会地点返回,相当于是从某一点到其它各个点的最短路径。从牛的家中走到聚会地点,能够把路径反过来变成从聚会地点到各个点的最短路径,两个最短路径值加起来就是每头牛所花费的最小时间,找出最大的...
分类:其他好文   时间:2014-09-10 19:11:50    阅读次数:191
Dijkstra单源最短路算法的C++实现
这是一个简易的Dijkstra算法的优化实现,利用了堆,这里使用C++中的优先级队列。利用STL内置的堆实现只是优化的第一步,更进一步的优化包括使用Fibonacci堆等更高级数据结构。算法中,使用邻接表作为存储图的数据结构,利用一个int数组d保存过程中及最后得到的最短路长度,再自定义一个pair...
分类:编程语言   时间:2014-09-09 19:58:49    阅读次数:285
ZOJ 3811 Untrusted Patrol 并查集+邻接表,注意所有点都要走过
n个点,m条边,k个点有报警器,每个报警器经过后报警一次就不能再使用。 L次报警,接下来L个数字是一次次的报警顺序 保安每经过一个报警器,报警器就报一次警; 判断保安在这种报警顺序下,有没有可能已经把所有的点都走过了一遍。可能yes 不可能no;...
分类:其他好文   时间:2014-09-09 18:27:49    阅读次数:225
poj-3321-dfs序-线段树-邻接表
思路:用邻接表存图,卡vector【这里被卡哭了QAQ】,用dfs遍历的顺序重新给节点编号,遍历时记录儿子数目。用dfs序建立线段树,change的时候单点更新,查询某子树上的苹果树即是查询该节点[i, i+childnum]这个区间的苹果数目,i指dfs序。总结:邻接表出边入边傻傻搞不清楚QAQA...
分类:其他好文   时间:2014-09-09 17:55:19    阅读次数:243
maxflow1273sap_gap
Sap和dinic复杂度一样的优化:1.邻接表优化:如果顶点多,往往n^2存不下,这时候就要存边:存每条边的出发点,终点点和价值,然后排序一下,再记录每个出发点的位置。以后要调用从出发点出发的边时候,只需要从记录的位置开始找就可以(其实可以用链表)。优化是时间快空间节省,缺点是编程复杂度将变大,所以...
分类:其他好文   时间:2014-09-09 15:04:58    阅读次数:209
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!