重み付けされていない無向グラフG = (V, E)が与えられます。ここで|V| <= 40,000および|E| <= 10 6 . また、 4 つの頂点a、b、a'、b'も与えられます。長さの合計が最小になるように、2 つのノード分離パスa -> a'およびb -> b'を見つける方法はありますか?
最初に考えたのは、最初に最短パスa -> a'を見つけ、それをグラフから削除してから、最短パスb -> b'を見つけることでした。この貪欲なアプローチはうまくいかないと思います。
注:アプリケーション全体を通して、aとbは固定されていますが、a 'とb'はクエリごとに変化するため、効率的なクエリを提供するために事前計算を使用するソリューションが望ましいでしょう。また、実際のパスではなく、長さの最小合計のみが必要であることに注意してください。
ヘルプ、アイデア、または提案をいただければ幸いです。よろしくお願いします!