安全な頂点の削除に関する 2 つの例外を次に示します。
5-28。グラフ G の分節頂点は、削除によって G が切断された頂点です。G を n 個の頂点と m 個の辺を持つグラフとします。関節点ではない G の頂点を見つけるための単純な O(n + m) アルゴリズムを与えてください。
5-29。前の問題をフォローアップして、削除によってグラフが切断されないように、n 個の頂点の削除順序を見つける O(n + m) アルゴリズムを与えます。(ヒント: DFS/BFS を考えてください。)
5-28 については、次のように考えています。
私はdfsを実行しますが、完全ではありません。処理が終了した最初の頂点は、葉である必要があるため、非関節頂点になります。または、後端がその祖先を指す葉です (これも関節頂点ではありません)。
5-29用
どうすれば綺麗にできるかはまだわかりません。私の頭に浮かぶのは、グラフでは、サイクル内の頂点を安全に削除できないということです。また、サイクルがない場合は、dfs ツリーから逆方向に頂点を削除することも安全です。
誰かヒントをくれたり、私の考えが正しいか間違っているか教えてくれませんか?