题意: 给你一个二分图,求最大匹配是否是 课程这边集合的顶点数。数组开错了 wa了数次。#include #include #include #include #include #include #include #include #include #include #include #incl.....
分类:
其他好文 时间:
2014-08-04 14:00:27
阅读次数:
205
[点连通度与边连通度]在一个无向连通图中,如果有一个顶点集合,删除这个顶点集合,以及这个集合中所有顶点相关联的边以后,原图变成多个连通块,就称这个点集为割点集合。一个图的点连通度的定义为,最小割点集合中的顶点数。类似的,如果有一个边集合,删除这个边集合以后,原图变成多个连通块,就称这个点集为割边集合...
分类:
其他好文 时间:
2014-08-03 17:39:55
阅读次数:
188
最大流最小割定理:移除最小边集使网络流中断的集值等于这个网络的最大流。建图: 第一个cpu 流向第i的 模块的流量为ai , 第i个模块流向 第二个cpu的流量为 bi 。模块之间连边 a->b= w b->a=w。#include #include #include #include #incl....
分类:
其他好文 时间:
2014-08-01 15:34:11
阅读次数:
281
给定一个二分图G,M为G边集的一个子集,如果M满足当中的任意两条边都不依附于同一个顶点,则称M是一个匹配。Reference:google上搜"ByVoid 二分图"(被墙了T^T)计算二分图的最大匹配:匈牙利算法模板:#include #include #define MAX 102long n,...
分类:
其他好文 时间:
2014-07-31 09:41:15
阅读次数:
270
有一个集合男和一个集合女,给出两集合间一些一一对应关系,问该两集合中的最大独立集的点数。
最大独立集=顶点总数-最大匹配数
此题中,若(a,b)有关,则(b,a)有关,每一个关系算了两次,相当于二分图的两边集合没有分男女,两边都是总人数,
所以此题中答案应该是 顶点总数-最大匹配数/2
#include
#include
#include
#include
#include
#...
分类:
其他好文 时间:
2014-07-22 22:38:34
阅读次数:
170
给定一个带权的无向连通图,怎样选取一棵生成树,使树上全部边上权的总和为最小,这叫最小生成树.求最小生成树的算法(1)克鲁斯卡尔算法图的存贮结构採用边集数组,且权值相等的边在数组中排列次序能够是随意的.该方法对于边相对照较多的不是非常有用,浪费时间.(2)普里姆算法图的存贮结构採用邻接矩阵.此方法是按...
分类:
其他好文 时间:
2014-07-10 10:48:27
阅读次数:
233
给定一个带权的无向连通图,怎样选取一棵生成树,使树上全部边上权的总和为最小,这叫最小生成树.求最小生成树的算法(1)克鲁斯卡尔算法图的存贮结构採用边集数组,且权值相等的边在数组中排列次序能够是随意的.该方法对于边相对照较多的不是非常有用,浪费时间.(2)普里姆算法图的存贮结构採用邻接矩阵.此方法是按...
分类:
其他好文 时间:
2014-06-28 09:43:44
阅读次数:
253
给定一个带权的无向连通图,怎样选取一棵生成树,使树上全部边上权的总和为最小,这叫最小生成树.求最小生成树的算法(1)克鲁斯卡尔算法图的存贮结构採用边集数组,且权值相等的边在数组中排列次序能够是随意的.该方法对于边相对照较多的不是非常有用,浪费时间.(2)普里姆算法图的存贮结构採用邻接矩阵.此方法是按...
分类:
其他好文 时间:
2014-06-27 13:38:32
阅读次数:
292
//前向星是将所有的边进行编号,每个节点u的边集合通过head[u]来找到u的第一条边,//再通过next[head[u]]依次遍历节点u的所有边。int head[maxn]; int to[maxn*2];int next[maxn*2];int cnt = 0;//边的编号 memset(h....
分类:
其他好文 时间:
2014-06-24 22:08:22
阅读次数:
164
上一篇文章中提到了最小生成树的Prim算法,这一节继续探讨一下最小生成树的Kruskal算法。什么是最小生成树算法上文已经交代过了,所以我们直接从Kruskal的步骤开始介绍。1.Kruskal算法的步骤:a.假定拓扑图的边的集合是E,初始化最小生成树边集合G={}。b.遍历集合E中的所有元素..
分类:
其他好文 时间:
2014-06-22 10:27:54
阅读次数:
357