Estoy buscando el número de x rutas de longitud únicas a través de un gráfico que comienza en un nodo particular.Cálculo del número de rutas a través del gráfico
Sin embargo, tengo la restricción de que no se visita ningún nodo más de una vez en ninguna ruta.
Por ejemplo tomar el siguiente gráfico:
Si soy después de que el número de 3 caminos de longitud a partir de 5.
la respuesta sería 9.
5 -> 2 -> 1 -> 3
5 -> 2 -> 4 -> 3
5 -> 2 -> 4 -> 7
5 -> 4 -> 2 -> 1
5 -> 4 -> 3 -> 1
5 -> 4 -> 7 -> 6
5 -> 6 -> 7 -> 4
5 -> 7 -> 4 -> 2
5 -> 7 -> 4 -> 3
Nota: solo estoy de acuerdo con la respuesta (9) no las rutas específicas.
He intentado usar un adjacency matrix a la potencia de x para dar el número de caminos, pero no puedo encontrar la manera para tener en cuenta la restricción de nodo único.
También he intentado usar un depth-first search pero la cantidad de nodos y el tamaño de x lo hacen inviable.
EDIT: Confundido DFS con BFS (Gracias sonrisa de nylon & Nikita Rybak).
¿Qué hay de la búsqueda de profundidad limitada? te da una mejor complejidad de espacio –
BFS es un algoritmo de búsqueda de gráficos bastante básico - parece que tomaría un gráfico descomunal para hacerlo inviable ... ¿Qué tan grande es un gráfico normal (tanto en los bordes como en los vértices)? Además, ¿cómo se almacena? –
@threenplusone Creo que te refieres a DFS, BFS tiene poco uso aquí. –