Un componente fuertemente conectado (SCC) en un gráfico dirigido es un ciclo o un vértice individual.
Aplicamos DFS en el gráfico y hacemos un seguimiento de dos propiedades para cada nodo en el árbol DFS producido:
1. Su tiempo (u orden) de ser descubierto por primera vez en DFS (por ejemplo, p1)
2. El orden del ancestro más antiguo que puede alcanzar (por ejemplo, p2)
Inicialmente, ambos son iguales para cada nodo.
Mientras que la primera propiedad permanece constante, la segunda puede actualizarse durante las llamadas recursivas DFS y usarse para encontrar bordes posteriores a los antepasados.
Para cualquier vértice si ambos son iguales después de llamadas DFS recursivas a todos sus vértices adyacentes, entonces es
1. Un vértice individual que no forma parte de ningún ciclo.
O
2. Parte de un ciclo y, por lo tanto, todo su descendiente (en el árbol DFS producido) puede alcanzarlo (no puede llegar a sus antepasados). En otras palabras, podemos comenzar y terminar en este nodo.
En el segundo caso, podemos hacer un seguimiento de todos los descendientes para imprimir.
esta animación ayuda a entender la explicación
(el primer entero es p1, el segundo es p2):
@File: Animación del algoritmo de Tarjan.gif
- ¿Hay alguna raíz cuadrada racional? Si es así, ¿cuáles son racionales?
- ¿Hay alguna forma general de resolver las desigualdades que tienen | x |?
- ¿Cuál es la prueba de que el Señor Krishna dijo realmente la Santa Geeta?
- ¿Por qué el signo ‘x’ (multiplicado) se llama ‘en’ en India? Por ejemplo, 2 multiplicado por 3 siempre se dice como ‘2 en 3’.
- ¿Cuál es una explicación intuitiva de la correspondencia de Curry-Howard?
Explicación detallada e implementación de c ++:
El algoritmo de Tarjan para encontrar componentes fuertemente conectados – GeeksforGeeks
PD: este algoritmo es muy similar a encontrar puntos de articulación, puentes y gráficos biconéctados. Entonces, aprender esto primero puede ayudarlo a obtener una mejor intuición para el algoritmo.
http://www.geeksforgeeks.org/art…
http://www.geeksforgeeks.org/bri…