Tengo un gráfico de dependencias de múltiples niveles como este, y necesito detectar cualquier referencia circular en este gráfico.¿Cómo puedo detectar la lógica circular o la recursión en referencias y dependencias de varios niveles?
A = B
B = C
C = [D, B]
D = [C, A]
Alguien tener un problema como este?
¿Alguna solución ???
Gracias y lo siento por el inglés.
========= ========== actualizado
yo tuvimos otra situación.
2 = 1
3 = 2
4 = [2, 3]
5 = 4
En este caso, mi recursiva código iterate dos veces en la referencia "4", pero estas referencias no generan un bucle infinito. Mi problema es saber cuándo la función itera más de una vez una referencia y no es un bucle infinito y cuándo es un bucle infinito, para informar al usuario.
1 = 4
2 = 1
3 = 2
4 = [2, 3]
5 = 4
Este caso es un poco diferent de 2º ejemplo. Esto genera un ciclo infinito. ¿cómo puedo saber cuándo los casos generan un ciclo infinito o no?
ver: http: // stackoverflow.com/questions/546655/finding-all-cycles-in-graph –
@Nick en absoluto lo que OP (y yo) está buscando. – Mordechai