Chiusura transitiva online migliore di O (N ^ 2) per aggiunta di bordi


15

Sto cercando un algoritmo online per mantenere la chiusura transitiva di un grafico aciclico diretto con una complessità temporale inferiore a O (N ^ 2) per aggiunta di bordi. Il mio attuale algoritmo è così:

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

Per i bordi O (N ^ 2) ciò si traduce in una complessità temporale totale di O (N ^ 4) che è molto peggio di, per esempio, Floyd-Warshall .

Risposte:


15

O (n) tempo per aggiunta bordo:


2
Vedi anche: DM Yellin. Accelerare la chiusura transitiva dinamica per i grafici dei gradi limitati. Acta Informatica, 30: 369–384, 1993.
Jeffε

1
Il primo articolo fornisce due importanti operazioni dalla chiusura transitiva, ma ne ho bisogno una terza: scorrere tutti i nodi accessibili. Il secondo documento è buono, però.
Alexandru,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.