ロールバック可能DSU
[詳解]
#include "dsu_rollback.hpp"
|
| DsuRollback ()=default |
|
| DsuRollback (int n) |
| コンストラクタ
|
|
int | find (int x) |
| 頂点 x を含む連結成分の代表元を返す
|
|
bool | merge (int x, int y) |
| 頂点 x と y を連結し、true を返す
|
|
void | undo () |
| 最後に行った連結操作を取り消す
|
|
void | snapshot () |
| DSUの状態を上書き保存する
|
|
void | rollback () |
| 最後に snapshot した時点まで巻き戻す
|
|
int | size (int x) |
| 頂点 x を含む連結成分のサイズを返す
|
|
bool | same (int x, int y) |
| 頂点 x と y が同じ連結成分に属するか否かを返す
|
|
int | count () |
| 連結成分の個数を返す
|
|
vector< vector< int > > | groups () |
| 各頂点を連結成分に分解する
|
|
ロールバック可能DSU
dsu_rollback.hpp の 5 行目に定義があります。
◆ DsuRollback() [1/2]
DsuRollback::DsuRollback |
( |
| ) |
|
|
default |
◆ DsuRollback() [2/2]
DsuRollback::DsuRollback |
( |
int | n | ) |
|
|
inline |
◆ find()
int DsuRollback::find |
( |
int | x | ) |
|
|
inline |
◆ merge()
bool DsuRollback::merge |
( |
int | x, |
|
|
int | y ) |
|
inline |
◆ undo()
void DsuRollback::undo |
( |
| ) |
|
|
inline |
◆ snapshot()
void DsuRollback::snapshot |
( |
| ) |
|
|
inline |
◆ rollback()
void DsuRollback::rollback |
( |
| ) |
|
|
inline |
◆ size()
int DsuRollback::size |
( |
int | x | ) |
|
|
inline |
◆ same()
bool DsuRollback::same |
( |
int | x, |
|
|
int | y ) |
|
inline |
◆ count()
int DsuRollback::count |
( |
| ) |
|
|
inline |
◆ groups()
vector< vector< int > > DsuRollback::groups |
( |
| ) |
|
|
inline |
この構造体詳解は次のファイルから抽出されました: