目录
并查集的功能:
1.1并查集结构 136
1.2并查集API设计 137
1.3并查集代码的实现 137
1.3.1UF(int N)构造方法实现
1.3.2并查集代码测试 138
1.4并查集应用案例 139
1.5UF_Tree算法优化 139
1.5.1UF_tree API设计
1.5.2优化后的性能分析 140
1.6路径压缩 141
1.7合并集---畅通工程 (未看,后期需要再查看)141
并查集的功能:
1、查询元素p和元素q是否在同一个组内
2、如果查询的两个元素不在同一个组内,那么会将这两个元素所在的组进行合并
1.1并查集结构 136
功能的实现原理:
功能1:
实际上查询两个元素是否在同一个组,实际上是查询的两个元素是否是在同一个树上。
如何判断是否在通过一个树上呢?
实质上:判断元素的根结点是否是同一个。
功能2:
实际上就是将两个树进行合并成通过一个树上。
1.2并查集API设计 137
1.3并查集代码的实现 137
1.3.1UF(int N)构造方法实现
本部分的代码在/uf/UF中。
1.3.2并查集代码测试 138
本部分代码在/test/UFtest中
1.4并查集应用案例 139
1.5UF_Tree算法优化 139
1.5.1UF_tree API设计
本部分的代码在/uf/UF_tree中
1.5.2优化后的性能分析 140
参看文档P10
1.6路径压缩 141
为了使得上面的优化后的内容复杂度能够降低,需要使用到路径压缩的设计。深度变低了,效率就会得到提升了。
原理:文档P11