RMVL  1.0.0
RoboMaster Vision Library
Public 类型 | Public 成员函数 | 所有成员列表
rm::UnionFind< Tp > 模板类 参考

并查集 更多...

#include <rmvl/rmath/union_find.hpp>

rm::UnionFind< Tp > 的协作图:

Public 类型

typedef Tp value_type
 
typedef Tp * pointer
 
typedef Tp & reference
 
typedef const Tp * const_pointer
 
typedef const Tp & const_reference
 
typedef std::size_t size_type
 

Public 成员函数

 UnionFind (const UnionFind &)=delete
 
 UnionFind (UnionFind &&)=delete
 
template<typename _InputIterator >
 UnionFind (_InputIterator first, _InputIterator last)
 Construct a new Union Find Set object 更多...
 
bool isSameSet (const_reference val_a, const_reference val_b)
 两个元素是否在同一个集合 更多...
 
void unionSet (const_reference val_a, const_reference val_b)
 将两个元素所在集合合并 更多...
 
std::unordered_map< value_type, std::vector< value_type > > exportData ()
 导出数据 更多...
 
int getConnectedComponent ()
 获取连通分量 更多...
 

详细描述

template<typename Tp>
class rm::UnionFind< Tp >

并查集

模板参数
Tp元素类型

成员类型定义说明

◆ const_pointer

template<typename Tp >
typedef const Tp* rm::UnionFind< Tp >::const_pointer

◆ const_reference

template<typename Tp >
typedef const Tp& rm::UnionFind< Tp >::const_reference

◆ pointer

template<typename Tp >
typedef Tp* rm::UnionFind< Tp >::pointer

◆ reference

template<typename Tp >
typedef Tp& rm::UnionFind< Tp >::reference

◆ size_type

template<typename Tp >
typedef std::size_t rm::UnionFind< Tp >::size_type

◆ value_type

template<typename Tp >
typedef Tp rm::UnionFind< Tp >::value_type

构造及析构函数说明

◆ UnionFind() [1/3]

template<typename Tp >
rm::UnionFind< Tp >::UnionFind ( const UnionFind< Tp > &  )
delete

◆ UnionFind() [2/3]

template<typename Tp >
rm::UnionFind< Tp >::UnionFind ( UnionFind< Tp > &&  )
delete

◆ UnionFind() [3/3]

template<typename Tp >
template<typename _InputIterator >
rm::UnionFind< Tp >::UnionFind ( _InputIterator  first,
_InputIterator  last 
)
inline

Construct a new Union Find Set object

模板参数
_InputIterator迭代器类型
参数
[in]first起始迭代器
[in]last终止迭代器

成员函数说明

◆ exportData()

template<typename Tp >
std::unordered_map<value_type, std::vector<value_type> > rm::UnionFind< Tp >::exportData ( )
inline

导出数据

返回
Key: 集合代表元素,Value: 集合

◆ getConnectedComponent()

template<typename Tp >
int rm::UnionFind< Tp >::getConnectedComponent ( )
inline

获取连通分量

◆ isSameSet()

template<typename Tp >
bool rm::UnionFind< Tp >::isSameSet ( const_reference  val_a,
const_reference  val_b 
)
inline

两个元素是否在同一个集合

参数
[in]val_a元素 A
[in]val_b元素 B
返回
是否在同一个集合

◆ unionSet()

template<typename Tp >
void rm::UnionFind< Tp >::unionSet ( const_reference  val_a,
const_reference  val_b 
)
inline

将两个元素所在集合合并

参数
[in]val_a元素 A
[in]val_b元素 B

该类的文档由以下文件生成: