Recorrido de anchura

9
Recorrido de anchura Luisa Fernanda Sánchez Gómez Erick Santiago Cotrino rico Julieth Tatiana Gómez

description

Anchura

Transcript of Recorrido de anchura

Page 1: Recorrido de anchura

Recorrido de anchura

Luisa Fernanda Saacutenchez GoacutemezErick Santiago Cotrino rico

Julieth Tatiana Goacutemez

Recorridos de un grafo

Recorrer un grafo significa tratar de alcanzar todos los nodos que esteacuten relacionados con uno que llamaremos nodo de salida Existen baacutesicamente dos teacutecnicas para recorrer un grafo

El recorrido en anchura El recorrido en profundidad

Recorrido en anchura

Supone recorrer el grafo a partir de un nodo dado en niveles es decir primero los que estaacuten a una distancia de un arco del nodo de salida despueacutes los que estaacuten a dos arcos de distancia y asiacute sucesivamente hasta alcanzar todos los nodos a los que se pudiese llegar desde el nodo salida

El recorrido genera un aacuterbol Si el grafo no es conexo el recorrido genera un bosque de arboles (un aacuterbol por componente conexa) Se puede aplicar en grafos dirigidos

Aplicacioacuten

Cuando se quiera hacer una exploracioacuten parcial de un grafo infinito o muy grande

Para hallar el camino maacutes corto desde un punto de un grafo a otro

Si hay que encontrar una solucioacuten partiendo de una situacioacuten inicial y efectuando el menor nuacutemero de pasos posibles

Coacutedigo Procedimiento RA(v nodo)Q 1048773 colaVaciaMarca[v] visitadoantildeadir(vQ)Mientras Q no estaacuteVaciacutea hacerU primero(Q)eliminar(uQ)Para cada veacutertice w adyacente a u hacerSi marca[w] ne visitado entoncesmarca[w] visitadoantildeadir(wQ)fSiFparaFmientrasFProcedimiento

Algoritmo que asegure el recorrido en todas las componentes conexas

Procedimiento RecorridoAnchura(Ggrafo)Para cada v isin V hacerMarcar[v] no visitadoFparaPara cada v isin V hacerSi marcar[v] ne visitado entoncesRA(v)fSiFparaFprocedimiento

Ejemplo

Nodo visitado Q

1 2 3 4

2 3 4 5 6

3 4 5 64 5 6 7 85 6 7 86 7 87 88

Aacuterbol resultante

Gracias

  • Recorrido de anchura
  • Recorridos de un grafo
  • Recorrido en anchura
  • Aplicacioacuten
  • Coacutedigo
  • Slide 6
  • Ejemplo
  • Aacuterbol resultante
  • Slide 9
Page 2: Recorrido de anchura

Recorridos de un grafo

Recorrer un grafo significa tratar de alcanzar todos los nodos que esteacuten relacionados con uno que llamaremos nodo de salida Existen baacutesicamente dos teacutecnicas para recorrer un grafo

El recorrido en anchura El recorrido en profundidad

Recorrido en anchura

Supone recorrer el grafo a partir de un nodo dado en niveles es decir primero los que estaacuten a una distancia de un arco del nodo de salida despueacutes los que estaacuten a dos arcos de distancia y asiacute sucesivamente hasta alcanzar todos los nodos a los que se pudiese llegar desde el nodo salida

El recorrido genera un aacuterbol Si el grafo no es conexo el recorrido genera un bosque de arboles (un aacuterbol por componente conexa) Se puede aplicar en grafos dirigidos

Aplicacioacuten

Cuando se quiera hacer una exploracioacuten parcial de un grafo infinito o muy grande

Para hallar el camino maacutes corto desde un punto de un grafo a otro

Si hay que encontrar una solucioacuten partiendo de una situacioacuten inicial y efectuando el menor nuacutemero de pasos posibles

Coacutedigo Procedimiento RA(v nodo)Q 1048773 colaVaciaMarca[v] visitadoantildeadir(vQ)Mientras Q no estaacuteVaciacutea hacerU primero(Q)eliminar(uQ)Para cada veacutertice w adyacente a u hacerSi marca[w] ne visitado entoncesmarca[w] visitadoantildeadir(wQ)fSiFparaFmientrasFProcedimiento

Algoritmo que asegure el recorrido en todas las componentes conexas

Procedimiento RecorridoAnchura(Ggrafo)Para cada v isin V hacerMarcar[v] no visitadoFparaPara cada v isin V hacerSi marcar[v] ne visitado entoncesRA(v)fSiFparaFprocedimiento

Ejemplo

Nodo visitado Q

1 2 3 4

2 3 4 5 6

3 4 5 64 5 6 7 85 6 7 86 7 87 88

Aacuterbol resultante

Gracias

  • Recorrido de anchura
  • Recorridos de un grafo
  • Recorrido en anchura
  • Aplicacioacuten
  • Coacutedigo
  • Slide 6
  • Ejemplo
  • Aacuterbol resultante
  • Slide 9
Page 3: Recorrido de anchura

Recorrido en anchura

Supone recorrer el grafo a partir de un nodo dado en niveles es decir primero los que estaacuten a una distancia de un arco del nodo de salida despueacutes los que estaacuten a dos arcos de distancia y asiacute sucesivamente hasta alcanzar todos los nodos a los que se pudiese llegar desde el nodo salida

El recorrido genera un aacuterbol Si el grafo no es conexo el recorrido genera un bosque de arboles (un aacuterbol por componente conexa) Se puede aplicar en grafos dirigidos

Aplicacioacuten

Cuando se quiera hacer una exploracioacuten parcial de un grafo infinito o muy grande

Para hallar el camino maacutes corto desde un punto de un grafo a otro

Si hay que encontrar una solucioacuten partiendo de una situacioacuten inicial y efectuando el menor nuacutemero de pasos posibles

Coacutedigo Procedimiento RA(v nodo)Q 1048773 colaVaciaMarca[v] visitadoantildeadir(vQ)Mientras Q no estaacuteVaciacutea hacerU primero(Q)eliminar(uQ)Para cada veacutertice w adyacente a u hacerSi marca[w] ne visitado entoncesmarca[w] visitadoantildeadir(wQ)fSiFparaFmientrasFProcedimiento

Algoritmo que asegure el recorrido en todas las componentes conexas

Procedimiento RecorridoAnchura(Ggrafo)Para cada v isin V hacerMarcar[v] no visitadoFparaPara cada v isin V hacerSi marcar[v] ne visitado entoncesRA(v)fSiFparaFprocedimiento

Ejemplo

Nodo visitado Q

1 2 3 4

2 3 4 5 6

3 4 5 64 5 6 7 85 6 7 86 7 87 88

Aacuterbol resultante

Gracias

  • Recorrido de anchura
  • Recorridos de un grafo
  • Recorrido en anchura
  • Aplicacioacuten
  • Coacutedigo
  • Slide 6
  • Ejemplo
  • Aacuterbol resultante
  • Slide 9
Page 4: Recorrido de anchura

Aplicacioacuten

Cuando se quiera hacer una exploracioacuten parcial de un grafo infinito o muy grande

Para hallar el camino maacutes corto desde un punto de un grafo a otro

Si hay que encontrar una solucioacuten partiendo de una situacioacuten inicial y efectuando el menor nuacutemero de pasos posibles

Coacutedigo Procedimiento RA(v nodo)Q 1048773 colaVaciaMarca[v] visitadoantildeadir(vQ)Mientras Q no estaacuteVaciacutea hacerU primero(Q)eliminar(uQ)Para cada veacutertice w adyacente a u hacerSi marca[w] ne visitado entoncesmarca[w] visitadoantildeadir(wQ)fSiFparaFmientrasFProcedimiento

Algoritmo que asegure el recorrido en todas las componentes conexas

Procedimiento RecorridoAnchura(Ggrafo)Para cada v isin V hacerMarcar[v] no visitadoFparaPara cada v isin V hacerSi marcar[v] ne visitado entoncesRA(v)fSiFparaFprocedimiento

Ejemplo

Nodo visitado Q

1 2 3 4

2 3 4 5 6

3 4 5 64 5 6 7 85 6 7 86 7 87 88

Aacuterbol resultante

Gracias

  • Recorrido de anchura
  • Recorridos de un grafo
  • Recorrido en anchura
  • Aplicacioacuten
  • Coacutedigo
  • Slide 6
  • Ejemplo
  • Aacuterbol resultante
  • Slide 9
Page 5: Recorrido de anchura

Coacutedigo Procedimiento RA(v nodo)Q 1048773 colaVaciaMarca[v] visitadoantildeadir(vQ)Mientras Q no estaacuteVaciacutea hacerU primero(Q)eliminar(uQ)Para cada veacutertice w adyacente a u hacerSi marca[w] ne visitado entoncesmarca[w] visitadoantildeadir(wQ)fSiFparaFmientrasFProcedimiento

Algoritmo que asegure el recorrido en todas las componentes conexas

Procedimiento RecorridoAnchura(Ggrafo)Para cada v isin V hacerMarcar[v] no visitadoFparaPara cada v isin V hacerSi marcar[v] ne visitado entoncesRA(v)fSiFparaFprocedimiento

Ejemplo

Nodo visitado Q

1 2 3 4

2 3 4 5 6

3 4 5 64 5 6 7 85 6 7 86 7 87 88

Aacuterbol resultante

Gracias

  • Recorrido de anchura
  • Recorridos de un grafo
  • Recorrido en anchura
  • Aplicacioacuten
  • Coacutedigo
  • Slide 6
  • Ejemplo
  • Aacuterbol resultante
  • Slide 9
Page 6: Recorrido de anchura

Algoritmo que asegure el recorrido en todas las componentes conexas

Procedimiento RecorridoAnchura(Ggrafo)Para cada v isin V hacerMarcar[v] no visitadoFparaPara cada v isin V hacerSi marcar[v] ne visitado entoncesRA(v)fSiFparaFprocedimiento

Ejemplo

Nodo visitado Q

1 2 3 4

2 3 4 5 6

3 4 5 64 5 6 7 85 6 7 86 7 87 88

Aacuterbol resultante

Gracias

  • Recorrido de anchura
  • Recorridos de un grafo
  • Recorrido en anchura
  • Aplicacioacuten
  • Coacutedigo
  • Slide 6
  • Ejemplo
  • Aacuterbol resultante
  • Slide 9
Page 7: Recorrido de anchura

Ejemplo

Nodo visitado Q

1 2 3 4

2 3 4 5 6

3 4 5 64 5 6 7 85 6 7 86 7 87 88

Aacuterbol resultante

Gracias

  • Recorrido de anchura
  • Recorridos de un grafo
  • Recorrido en anchura
  • Aplicacioacuten
  • Coacutedigo
  • Slide 6
  • Ejemplo
  • Aacuterbol resultante
  • Slide 9
Page 8: Recorrido de anchura

Aacuterbol resultante

Gracias

  • Recorrido de anchura
  • Recorridos de un grafo
  • Recorrido en anchura
  • Aplicacioacuten
  • Coacutedigo
  • Slide 6
  • Ejemplo
  • Aacuterbol resultante
  • Slide 9
Page 9: Recorrido de anchura

Gracias

  • Recorrido de anchura
  • Recorridos de un grafo
  • Recorrido en anchura
  • Aplicacioacuten
  • Coacutedigo
  • Slide 6
  • Ejemplo
  • Aacuterbol resultante
  • Slide 9