任意のグラフの 2 つの頂点間のすべての単純なパスを列挙するには、一般に指数関数的な時間がかかります。これは、頂点間に指数関数的な数の単純なパスが存在する可能性があるためです。しかし、2 つの端点の間の少なくとも 1 つの単純なパス上にある頂点だけに関心がある場合はどうなるでしょうか。
つまり:無向グラフと 2 つの異なる頂点が与えられた場合、2 つの頂点間の少なくとも 1 つの単純なパス上にあるすべての頂点を見つける多項式時間アルゴリズムはありますか? これは接続性とは異なります。行き止まりと行き止まりは除外されます。ただし、パスの分岐と合流は許可されます。
この問題を解決するように見えるアルゴリズムを作成するのは非常に簡単ですが、場合によっては失敗するか、異常なケースでは指数関数的な実行時間がかかります。
より一般的に:グラフ内の頂点の 2 つの互いに素なセットが与えられた場合、一方のセットの頂点からもう一方のセットの頂点への単純なパス上にあるすべての頂点を見つける多項式時間アルゴリズムはありますか?
(これに対する本当に明白な解決策がある場合は、私を許してください。確かにあるべきだと感じています。)