2
最大フロー計算または他のアプリケーションのために、実際にリンクカットツリーは使用されていますか?
私がよく実装する多くの最大フローアルゴリズム、ダイニックのアルゴリズム、プッシュ再ラベルなどでは、動的ツリー(リンクカットツリーとも呼ばれます)を使用することで漸近的な時間コストを改善できます。 プッシュ再ラベルは、通常またはまたはますが、動的ツリーO (V 3)O (V 2 √O (V2E)O(V2E)O(V^2E)O (V3)O(V3)O(V^3)O(VElog(V2/E))O (V2E−−√)O(V2E)O(V^2\sqrt{E})O (VEログ(V2/ E))O(VElog(V2/E))O(VE \log(V^2/E)) Dinicのアルゴリズムはで実行されますが、動的ツリーO (V E log (V ))O (V2E)O(V2E)O(V^2E)O (VEログ(V))O(VElog(V))O(VE\log(V)) ただし、ほとんどのライブラリでのmax-flowアルゴリズムの実用的な実装では、このデータ構造を使用していないようです。ダイナミックツリーは、実際には最大フロー計算に使用されていますか?または、実際の問題のサイズに役立つにはオーバーヘッドが大きすぎますか? リンクカットツリーが使用される他の問題ドメインはありますか? この質問は、cstheoryで私が尋ねた質問に関連しています。最先端のMaximum Flowアルゴリズムは実用的ですか?