library icon indicating copy to clipboard operation
library copied to clipboard

graph のドキュメントを書いていて気づいたこと

Open NachiaVivias opened this issue 3 years ago • 2 comments

~~biconnedted~~ biconnected components の実装

minmax,min,maxのテンプレート引数を指定していないことが原因で、 StaticGraph<void> が使えません。

~~biconnedted~~ biconnected components の実装 2

孤立点からなる成分は出力から検出できませんが、これは想定していますか?

input (1-indexed)

3 1
1 2

output

## biconnected_components.articulation =  [  ]
## biconnected_components.bc =  [ [ ( 0, 1 ) ] ]

二辺連結成分を縮約して得られる木

辺が片方の向きにしか張られないのが不便だと思います。

input (1-indexed)

3 2
2 3
3 1

output

## two_edge_connected_components.groups =  [ [ 0 ], [ 2 ], [ 1 ] ]
## two_edge_connected_components.tree =  [ [ 1 ], [  ], [ 1 ] ]

グラフを表す型の制約

逐一書くと、くどくなります。どのように書けば(あるいは省略すれば)よいですか?

GUnweightedGraphStaticGraph<int>またはvector<vector<I>> ( I は整数型)で、...

NachiaVivias avatar Jan 29 '22 07:01 NachiaVivias

ご指摘ありがとうございます。Library Checker の方にもうすぐ問題が追加されそうなので、その際に verify しつつ修正しようと思います

グラフを表す型の制約

難しい問題ですね… たぶん自分のライブラリは全体的に vector<vector<(int 以外の整数型)>> をグラフ型として使用するときの動作を保証していないのと、UnweightedGraphvector<vector<int>> のエイリアスなので、

UnweightedGraph、StaticGraph<int>

のように書いても良いのではないかと思います。

NyaanNyaan avatar Feb 01 '22 14:02 NyaanNyaan

お返事ありがとうございます。雰囲気で bug のテンプレートを使ってしまったので対応を迫ったようにしてしまったことは申し訳ございません。("bug"ではないので)

UnweightedGraph、StaticGraph<int>

のように書いても良いのではないかと思います。

それで間違いない場合は、その通りに書いておきます。

(ついでに issue 本文の目立つ typo 2 点を修正した報告をします)

NachiaVivias avatar Feb 01 '22 15:02 NachiaVivias