Ho letto l'algoritmo per trovare i componenti fortemente connessi in un grafico diretto . Considera due ricerche DFS e il secondo passaggio sta trasponendo il grafico originale.
L'algoritmo è il seguente:
- Eseguire DFS su (a partire da un vertice di partenza arbitrario), tenendo traccia dei tempi di fi nitura di tutti i vertici.
- Calcola la trasposizione,
- Eseguire DFS su , iniziando dal vertice con l'ultimo tempo di fi nitura, formando un albero radicato in quel vertice. Una volta completato un albero, passa al vertice non visitato con il tempo di fi nitura più recente successivo e forma un altro albero usando DFS e ripeti fino a quando tutti i vertici in sono visitati.
- Emette i vertici in ciascun albero formato dal secondo DFS come componente separato fortemente connesso.
La mia domanda è :
- Qual è l'intuizione dietro questo passaggio intermedio del calcolo di una trasposizione?