Wiele algorytmów maksymalnego przepływu, które zwykle widzę zaimplementowanych, algorytm Dinica, push push i inne, mogą mieć asymptotyczny koszt czasu ulepszony dzięki zastosowaniu dynamicznych drzew (znanych również jako drzewa cięte łączem).
- Wciśnij etykietę w trybie lub O ( V 3 ) lub O ( V 2 √)normalnie, ale z dynamicznymi drzewamiO(VElog(V2/E))
- Algorytm Dinica działa w , ale z dynamicznymi drzewami O ( V E log ( V ) )
Jednak praktyczne implementacje algorytmów maksymalnego przepływu w większości bibliotek wydają się nie wykorzystywać tej struktury danych. Czy drzewa dynamiczne były kiedykolwiek wykorzystywane w praktyce do obliczania maksymalnego przepływu? Czy też niosą ze sobą zbyt duży koszt, aby były przydatne w rzeczywistych rozmiarach problemów?
Czy istnieją inne domeny problematyczne, w których wykorzystywane są drzewa cięte łączem?
To pytanie jest związane z pytaniem, które zadałem na cstheory: Czy któryś z najnowszych algorytmów maksymalnego przepływu jest praktyczny?