Búsqueda en Profundidad

536 views

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
536
On SlideShare
0
From Embeds
0
Number of Embeds
58
Actions
Shares
0
Downloads
32
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Búsqueda en Profundidad

  1. 1. Búsqueda en Profundidad(Depth – First)Algoritmo:1. Definir una Lista L con los nodos iniciales. En cualquier momentoasumir que L es una lista de los nodos que no han sido examinados.2. Si L está vacía, falla. De otro modo, se toma un nodo N de L.3. Si N es una meta. Regrese el nodo y el trayecto desde el nodo inicialal nodo N.4. Si N no es una meta. Elimine N de L y añada todos los hijos alcomienzo/frente de L de N, etiquetándolos con la trayectoria desde elinicio. Retorne al paso 2.
  2. 2. • Se tiene un árbol en unestado inicial y se cuentacon cuatro metas: M1, M2,M3 y M4.
  3. 3. • Se introduce A como primerelemento de la lista.
  4. 4. • A no es la meta así que sesaca de la lista.• Se introducen los hijos de Aal frente de la listaguardando siempre el ordende descendencia yempezando de izquierda aderecha.
  5. 5. • Se saca AB de la lista yaque no se llego a ningunameta.• Se introducen los hijos de Bsiguiendo siempre el ordende izquierda a derecha.• En el frente de la listaquedan ABD y ABE.
  6. 6. • Al no ser ABD una meta sesaca de la lista.• Se introducen los hijos de Dal frente de la lista.• Queda como resultado elestado mostrado.
  7. 7. • No se encuentra una metaen H.• Se introducen los hijos de Hy se puede ver que uno delos hijos es una meta.
  8. 8. • Se comprueba de que P noes una meta y se sacaABDHP de la lista.
  9. 9. • Se comprueba de que M2es una de las metas y seregistra el recorridocompleto.• Se Obtiene el recorridohacia la meta.• Existe mas de una meta enel árbol, el algoritmoalcanza el éxito cuandoencuentra una meta y nodistingue cual de ellas sea
  10. 10. • En el caso hipotético de que M2 no fuese una meta el siguientepaso habría sido sacar ABDHM2 de la lista y analizar el nodo I.• Como I no es una meta el siguiente estado de la lista seria: L7= {ABDIQ ABDIR ABDE AC}• Se comprueba que ni Q ni R son metas y se sacan de la listahasta llegar al estado de la lista L9 = {ABEJ ABEM1 AC}.• Se expanden los hijos de J y la lista queda como L10 = {ABEJSABEJT ABEM1 AC}.• Ni S ni J son metas así que se sacan de la lista y finalmente sellega al estado meta M1 con la lista L12 = {ABEM1 AC}.• Se hace el recorrido que lleva desde A hasta M1: A  B  E M1.

×