Zamykanie przechodnie online lepiej niż O (N ^ 2) na dodanie krawędzi


15

Szukam algorytmu online, aby utrzymać przechodnie przechodzenie ukierunkowanego wykresu acyklicznego o złożoności czasowej mniejszej niż O (N ^ 2) na dodanie krawędzi. Mój obecny algorytm wygląda następująco:

For every new edge u->v connect all nodes in Pred(u) \cup { u } with all nodes in Succ(v) \ \cup { v }.

W przypadku krawędzi O (N ^ 2) przekłada się to na całkowitą złożoność czasową O (N ^ 4), która jest znacznie gorsza niż na przykład Floyda-Warshalla .

Odpowiedzi:


15

O (n) czas na dodanie krawędzi:


2
Zobacz także: DM Yellin. Przyspieszenie dynamicznego zamykania przechodniego dla wykresów o ograniczonym stopniu. Acta Informatica, 30: 369–384, 1993.
Jeffε

1
Pierwszy artykuł zawiera dwie ważne operacje od zamknięcia przechodniego, ale potrzebuję trzeciej: iteracji przez wszystkie dostępne węzły. Drugi artykuł jest jednak dobry.
Alexandru
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.