图
锋巅
这个作者很懒,什么都没留下…
展开
-
二分图最大匹配
月老的难题 月老的难题,这一题是最大匹配问题,求最大匹配的常见方法有贪心(对出度的贪心),最大流算法(加个源点和汇点),在这是匈牙利算法(寻找增广路,每找到一个增广路,配对加一) 这道题我是用匈牙利算法写的(刚学的),下面我说下我对这个算法的理解,在做这题前,我没用过邻接表存过图,就因为我想写下邻接表,这道题一搁搁了好几天。今天第一次写时,还是老习惯用邻接矩阵(菜呀),写好原创 2012-12-07 13:25:14 · 588 阅读 · 0 评论 -
最小生成树
布线问题 看了这题,首先能确定的,这是到最小生成树题。知道了最小生成树,那就得用最小生成树算法。求最小生成树的算法常见的有两种:Prime算法,Kruskal算法。这两种算法都是贪心思想,Prime是对点的贪心,Kruskal是对边的贪心。 Prime算法: U表示全部点的集合 第一步:任选一点原创 2012-12-10 15:31:04 · 617 阅读 · 0 评论 -
最短路
城市平乱 首先这道题是最短路问题,单源最短路问题最简单的是Dijkstra算法,多源最短路(即每一对点之间的距离)用Floyed算法,Floyed算法在这里应该会超时的。 首先说下Dijkstra算法的大体思路, 第一步:源点进入集合S(U为整个点集),初始化与源点相连的点,没连得点初始化为正无穷,用数组D[i]记录由原点到各点的距离。原创 2012-12-11 17:25:13 · 625 阅读 · 0 评论 -
Bellman——ford
Dijkstra算法虽然可以算单源最短路,如果对边的权值为正的还没问题,但对边权为负的情况就不好办了,Bellman——ford可以很好滴解决这个个问题 ,它是对边的松弛。 #include using namespace std; #define MAXM 10100 int u[MAXM],v[MAXM],w[MAXM],site[MAXM],d[MAXM]; int N,M,P,原创 2012-12-11 17:42:31 · 635 阅读 · 0 评论 -
Drainage Ditches
http://acm.nyist.net/JudgeOnline/problem.php?pid=323 /*这是一道最基础的最大流问题,没运用什么转变思维, 用广搜寻找增广路的,听说深搜更好些 像这种简单流的问题,最核心的问题是寻找增广路 */ #include #include // 广搜中用的队列 #include //输入输出流 #include //memset #inclu原创 2013-09-06 10:01:41 · 767 阅读 · 0 评论