5.3.3 En profundidad
Una Búsqueda en profundidad es un algoritmo que permite recorrer todos los nodos de un grafo o árbol (teoría de grafos) de manera ordenada, pero no uniforme. Su funcionamiento consiste en ir expandiendo todos y cada uno de los nodos que va localizando, de forma recurrente, en un camino concreto. Cuando ya no quedan más nodos que visitar en dicho camino, regresa (Backtracking), de modo que repite el mismo proceso con cada uno de los hermanos del nodo ya procesado..
Pseudocodigo algoritmo búsqueda en profundidad
funcion buscar_en_hijos(Nodo:n)
variable encontrado=boolean
inicio
si solucion(n->hijo)
retornar n->hijo
sino
n1=n->hijo
encontrado=falso
mientras no (encontrado)
n1=n1->hermano
sisolucion(n1)
retornar n1
sino
n1=null
romper ciclo
buscar_en_hijos(n->hijo)
n2->n->hijo
mientras(n2->hermano!=null)
n2=n2->hermano
buscar_en_hijos(n2)
fin si
fin mientras
fin función
GOMEZ, D. R. (s.f.). Inteligencia
Artificial. Obtenido de Inteligencia Artificial:
https://sites.google.com/a/utp.edu.co/inteligencia-artificial/algoritmo-busqueda-en-profundidad
No hay comentarios:
Publicar un comentario