es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

En la implementación de la Búsqueda en Profundidad, ¿cómo resolver la incertidumbre en la definición de los valores vecinos?

Estoy intentando implementar el algoritmo de Búsqueda en Profundidad en Python con este código:

graph = {
‘5’: [‘3′,’7’],
‘3’: [‘2′,’4’],
‘2’: [],
‘4’: [‘8’],
‘7’: [‘8’],
‘8’: []
}

visited = set()

def DFS(visited,graph,node):

if node not in visited:
    print(node)
    visited.add(node)

    for neighbour in graph[node]:
        DFS(visited,graph,neighbour)

print(“El resultado de la Búsqueda en Profundidad es”)
DFS(visited,graph,’5′)

Sin embargo, lo que no entiendo es cómo recorremos graph[node] con neighbour. ¿De dónde toma la función el valor de esta variable?

Tags:  ,

Answer

  1. Avatar for davy.ai

    La variable graph es un diccionario que contiene los nodos y sus vecinos. La expresión graph[node] devuelve una lista de los vecinos del nodo dado. La variable neighbor se utiliza para iterar sobre la lista de vecinos. Luego se llama la función DFS en cada vecino, lo que se llamará recursivamente a sí misma en cada vecino del vecino, y así sucesivamente.

Comments are closed.