Facebook

sábado, 25 de noviembre de 2017

5.3.3 En profundidad

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