STA Chapter1 part3
Graph connectivity
入力: G = (V,E), n = |V| , m = |E| , bounded degree d*1 グラフはn×dの隣接行列で与えられる
目的: グラフが連結グラフか?
目的を以下のように変更する
Gが連結性にε-closeとは、Gを連結するのに高々εdn本の枝を足せばよいことを言う。
アルゴリズム
- O(1/εd)のノード(頂点)をランダムに選ぶ。
- 各ノードsに関して幅優先探索を行う
- をみたすノードが見つかる
- sがサイズの連結グラフ
- もし2.2が起きたらGをrejectして停止
- そうでなければaccept
もし、Gがε-farならばGはεdnの連結成分*3を持つ.
もし、Gがεdn未満のc.cをもつならばGはε-close
ということになる。
すなわち、εdn-1本足すとGは連結にできる。
このことから、
Gは少なくとも個でサイズは最大でもであるc.cをもつことになる。
もし、これが成り立たないと仮定すると
Gは少なくとも個で以上のサイズであるc.cをもつ
これは、
頂点数 >となり矛盾。
Gが連結ならば、rejeectが起きないので100% accept
Gがε-far-fromならば、
となる。