转载自http://blog.csdn.net/pi9nc/article/details/11848327 二分图:简单来说,如果图中点可以被分为两组,并且使得所有边都跨越组的边界,则这就是一个二分图。准确地说:把一个图的顶点划分为两个不相交集 U 和 V ,使得每一条边都分别连接U 、 V 中的 ...
分类:
其他好文 时间:
2017-04-19 09:57:23
阅读次数:
188
并查集是一种树型的数据结构,用于处理一些不相交集合(Disjoint Sets)的合并及查询问题。主要操作:1. 初始化:每个点所在集合初始化为其自身。2. 查找:查找元素所在的集合,即根节点。3. 合并:合并之前要先判断两个元素是否属于同一集合,“查找”操作。 ...
分类:
其他好文 时间:
2017-03-26 16:17:40
阅读次数:
126
不相交集类 ,可以用来解决等价问题,实现起来简单,可以只使用一个数组。 用一个数组id[N] 记录N个触点,初始化Id[i] =i; 实现动态链接的时候,遍历这个数组,如果p和q的id[p] =id[q] 那么不用管,否则要将pq链接起来,使用uion方法,也就是将p的分量重命名为id[q]。 具体 ...
分类:
其他好文 时间:
2017-03-22 16:18:49
阅读次数:
170
将边集划分成若干极大不相交集合,满足每个简单环都可以由某些集合相加得到,则答案就是这些集合大小的$\gcd$的约数。 对于一个简单环,上面的边一定不是桥边,而和它在一个集合的边肯定不在其他简单环上。因此删除它之后,这些边就从非桥边变成了桥边。 枚举每条非桥边跑Tarjan计算答案即可。 时间复杂度$ ...
分类:
其他好文 时间:
2016-07-09 01:54:42
阅读次数:
234
定义并查集是一种树型的数据结构,用于处理一些不相交集合(DisjointSets)的合并及查询问题。常常在使用中以森林来表示。应用若某个朋友圈过于庞大,要判断两个人是否是在一个朋友圈,确实还很不容易,给出某个朋友关系图,求任意给出的两个人是否在一个朋友圈。规定:x和y是..
分类:
其他好文 时间:
2016-06-30 23:32:12
阅读次数:
241
定义并查集是一种树型的数据结构,用于处理一些不相交集合(DisjointSets)的合并及查询问题。常常在使用中以森林来表示。应用若某个朋友圈过于庞大,要判断两个人是否是在一个朋友圈,确实还很不容易,给出某个朋友关系图,求任意给出的两个人是否在一个朋友圈。规定:x和y是..
分类:
其他好文 时间:
2016-06-30 23:31:19
阅读次数:
248
并查集(UnionSet)是一种树型的数据结构,用于处理一些不相交集合)的合并及查询问题。常常在使用中以森林来表示。 并查集实现了将N个不同的元素分成一组不相交的集合。开始时,每个元素就是一个集合,然后按规律将两个集合进行合并。 比如:现在有 0,1,2,3,4,5,6,7,8,9 总共10个元素。 ...
分类:
其他好文 时间:
2016-06-24 10:34:39
阅读次数:
151
并查集 并查集(Union-Find Sets)是一种非常精巧而实用的数据结构,它主要用于处理一些不相交集合的合并问题。一些常见的用途有求连通子图、求最小生成树的 Kruskal 算法和求最近公共祖先(Least Common Ancestors, LCA)等。 并查集的实现原理也比较简单,就是使用 ...
分类:
其他好文 时间:
2016-05-18 21:45:48
阅读次数:
127
并查集及应用 在信息学竞赛中,并查集是一种不可忽视的一部分内容,把最近几年的NOI和NOIP复赛题目大致浏览了一遍,发现有好几道应用并查集的题目,因此本文由浅入深的介绍并查集在编程中的巧妙应用。 什么是并查集?并查集是一种树型的数据结构,用于处理一些不相交集合(Disjoint Sets)的合并及查 ...
分类:
其他好文 时间:
2016-05-16 12:49:03
阅读次数:
222
并查集(Union-find Sets)是一种非常精巧而实用的数据结构,它主要用于处理一些不相交集合的合并问题。一些常见的用途有求连通子图、求最小生成树的 Kruskal 算法和求最近公共祖先(Least Common Ancestors, LCA)等。 使用并查集时,首先会存在一组不相交的动态集合 ...
分类:
其他好文 时间:
2016-05-06 19:09:48
阅读次数:
164