|
表格线识别通用库文档
|
并查集类 更多...
#include <disjoint_set.hpp>
|
inline |
|
inlineexplicit |
并查集类的带参构造函数
该构造函数用于初始化并查集类的对象,接受一个数组数据作为参数,并将各指针成员初始化为 nullptr,然后调用 Assign 函数进行赋值操作。
| list | 数组数据 |
在文件 disjoint_set.hpp 第 95 行定义.

|
inlineexplicit |
并查集类的带参构造函数
该构造函数用于初始化并查集类的对象,接受起始迭代器和结束迭代器作为参数,并将各指针成员初始化为 nullptr,然后调用 Assign 函数进行赋值操作。
| ITERATOR | 迭代器类型 |
| start_iterator | 开始迭代器 |
| end_iterator | 结束迭代器 |
在文件 disjoint_set.hpp 第 113 行定义.

|
inline |
并查集类的初始化列表构造函数
该构造函数用于初始化并查集类的对象,接受一个初始化列表作为参数,并将各指针成员初始化为 nullptr,然后调用 Assign 函数进行赋值操作。
| T | 并查集元素类型 |
| inital_list | 初始化列表 |
在文件 disjoint_set.hpp 第 129 行定义.

|
default |
并查集类的拷贝构造函数
|
inline |
|
inline |
重新赋值并查集
该方法用于重新赋值并查集,类似于 STL 容器的 assign 方法。
| list | 要赋值的列表 |
在文件 disjoint_set.hpp 第 232 行定义.

|
inline |
重新赋值并查集
该方法用于重新赋值并查集,根据输入的迭代器范围进行初始化,类似于 STL 容器的 assign 方法。
| ITERATOR | 迭代器类型 |
| start_iterator | 开始迭代器 |
| end_iterator | 结束迭代器 |
在文件 disjoint_set.hpp 第 286 行定义.
|
inline |
清空所有数据
该方法用于清空当前并查集实例中的所有数据,但保留已分配的空间,类似 STL 容器的 clear 方法。
在文件 disjoint_set.hpp 第 345 行定义.
获取单个集合的大小
该方法用于获取指定索引数据项所对应的集合的大小,即集合中包含的数据项个数。
| index | 数据项索引 |
在文件 disjoint_set.hpp 第 500 行定义.
|
inline |
获取集合的数量
该方法用于获取并查集中包含的集合数量,即返回并查集中不相交集合的个数。
在文件 disjoint_set.hpp 第 520 行定义.
|
inline |
获取并查集类的数据指针
该方法将返回一个指向并查集类数据的指针,可以用于访问和修改数据,类似于 STL 容器的 data 方法。
在文件 disjoint_set.hpp 第 377 行定义.
获取并查集类的常数据指针
该方法将返回一个指向并查集类数据的常指针,可以用于访问数据,类似于 STL 容器的 data 方法。
在文件 disjoint_set.hpp 第 391 行定义.
获取所有集合数据
该方法用于获取并返回所有集合的数据列表。每个集合的数据用一个列表表示,而所有集合则组成了一个列表的列表。
在文件 disjoint_set.hpp 第 607 行定义.
判断并查集中两个指定索引数据项是否在同一个集合中
该方法用于判断给定的两个数据项索引在并查集中是否属于同一个集合,即它们的根节点是否相同。通过比较两个数据项的根节点来确定它们是否在同一个集合中。
| index1 | 数据项索引1 |
| index2 | 数据项索引2 |
| true | 在同一个集合中 |
| false | 不在同一个集合中 |
在文件 disjoint_set.hpp 第 443 行定义.
|
inline |
重置并查集所对应的空间大小
该方法用于重置并查集所对应的空间大小,类似于 STL 容器的 reserve 功能,如果需要重置的空间大小小于当前已分配空间大小,则不执行重置操作。
| size | 并查集所对应空间的大小 |
在文件 disjoint_set.hpp 第 166 行定义.
|
inline |
调整并查集对象的大小
该方法用于调整并查集对象的大小,类似于 STL 容器的 resize 功能。
| size | 并查集对象的大小 |
在文件 disjoint_set.hpp 第 202 行定义.
获取并查集根节点数据索引
该方法用于获取指定索引数据项所对应的集合的根节点数据索引。如果索引不是根节点,则会进行路径压缩操作,将其直接连接到根节点上,以提高查询效率。
| index | 数据项索引 |
在文件 disjoint_set.hpp 第 414 行定义.
|
inline |
获取并查集类的数据大小
该方法用于获取并查集中元素的数量,类似于 STL 容器的 size 方法。
在文件 disjoint_set.hpp 第 363 行定义.
|
inline |
交换并查集
该方法用于交换当前并查集实例与另一个并查集的内容,类似于 STL 容器的 swap 方法,时间复杂度为 O(1)。
| disjoint_set | 另一个并查集 |
在文件 disjoint_set.hpp 第 327 行定义.
|
inline |
合并两个指定索引数据项
该方法用于将两个指定索引的数据项合并到同一个集合中,即将两个数据项所在的集合合并为一个集合。
| index1 | 数据项索引1 |
| index2 | 数据项索引2 |
在文件 disjoint_set.hpp 第 467 行定义.
|
inline |
根据提供的判断条件对并查集中所有的数据项进行两两合并
该方法用于根据提供的判断条件来决定是否将所有的数据项两两合并到同一个集合中。判断条件由参数 is_union 指定,可以是函数指针、lambda 表达式、仿函数等形式。如果判断条件返回 true,则将对应的数据项合并到同一个集合中;否则不进行合并操作。
| is_union | 判断是否合并 item1 和 item2 到一个集合中,反之不合并(形式:(const T& item1, const T& item2) -> bool,支持函数指针、lambda表达式、仿函数等) |
在文件 disjoint_set.hpp 第 559 行定义.