数据结构学习笔记------并查集(附cf例题)

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/Andy123321aa/article/details/84187629

并查集是将原始的数据集S看成一个森林,每棵树代表一个集合。初始时,每个数据看成一颗只有根节点的树,根据具体要求,将若干树合并起来组成若干个含有节点较多的树,每棵树就是一个集合。此数据结构可以方便的对数据集S进行:(1)查找其属于哪个集合(2)将一个集合合并到另一个集合的操作。要注意的是,为了查找方便,所以属于同一集合的节点应该连接到同一根节点,这样就避免了迭代查找造成的时间浪费,所以在合并集合的时候应注意这个问题。
其中,最小生成树的kruskal算法就是一个并查集的典型应用。

下面附上有关并查集的例题一道:
Intel Code Challenge Elimination Round (Div. 1 + Div. 2, combined), problem: © Destroying Array
题目链接:
http://codeforces.com/contest/722/problem/C
这是我的题解:
https://blog.csdn.net/Andy123321aa/article/details/84187352

猜你喜欢

转载自blog.csdn.net/Andy123321aa/article/details/84187629