You are on page 1of 27

ALGORITMO DE DIJKSTRA

[3,
DISTANCIA
ACUMULADA

DE DONDE O QUE
NODO PROCEDE

Tomaremos un pedazo de mapa para
ejemplificar el
uso y aplicación del
algoritmo de Dijkstra.

Ahora seleccionamos los puntos por los que se puede pasar y trazar los posibles recorridos hasta obtener un grafo. Veamos que distancia es mas corta para ir del nodo A hacia el J A C B D F E G I H J .

a un lado quedando de esta manera. Y las ramas tienen su distancia en Km. 3 A B 1 C 3 5 7 D 1 4 2 F E G 2 3 I 4 H 5 1 J .Los nodos tienen UNA LETRA dentro de ellos.

Este se convertirá en nuestro punto permanente.-] 5 7 D 1 4 2 F E G 2 3 I 4 H 5 1 J .-] 1 C 3 Seleccionamos el primer nodo como punto de partida y a partir de ahí empezamos el recorrido. [0.3 A B [0.

Y el segundo numero nos dice de que nodo 1 C 3 5 7 D 1 4 2 Donde el primer número es B [0.A] F E G 2 3 I 4 H 5 1 J .A] 3 A [3.El nodo A hace conexión con el nodo B por medio de la rama con una distancia de 3. la suma del valor de las aristas.-] por lo tanto [3.

El valor de la arista es 3.3 A El nodo A también hace conexión con el nodo D.A] B [0. y como venimos del nodo A queda así: [3.-] 1 C 3 D [3.A] [3.A] 5 7 1 4 2 F E G 2 3 I 4 H 5 1 J .

3 A [3.A] 5 7 1 4 2 F E G 2 3 I 4 H 5 1 J . en este caso ambos tienen el mismo número acumulado. entonces se toma uno de manera aleatoria.A] B [0. esta vez tomamos el nodo B 1 C 3 D [3.-] Ahora seleccionamos el menor número acumulado.

A] mas el peso o valor de la arista en el primer número.Ahora el nodo B hace conexión con el nodo C que dando de esta manera: [4.-] 1 C [4.B] Pues es [3.B] 3 D [3.A] 5 7 1 4 2 F E G 2 3 I 4 H 5 1 J . 3 A [3.A] B [0.

A] 5 7 1 4 2 F [10.3 A [3.B] 1 C [4. quedando [10.B] E 3 G 2 I 4 H 5 1 J .B] 3 D [3.-] Pasa lo mismo con el nodo F y el valor de su arista.A] B [0.

A] B [0. 1 C [4. que es el del nodo D.3 A [3.-] Una vez que terminamos los caminos tomamos de nuevo el número acumulado menor.B] E 3 G 2 I 4 H 5 1 J .B] 3 D [3.A] 5 7 1 4 2 F [10.

quedando así.D] F [10.B] E 3 G 2 I 4 H 5 1 J .3 A [3.D] 1 C [4.A] 5 7 1 4 2 [7.A] B [0. [7.-] Se hace lo mismo pero ahora el camino es hacia el nodo E.B] 3 D [3.

-] Tomamos como referencia al nodo C y recorremos todos los caminos posibles.3 A [3.A] 5 7 1 4 2 [7.B] E 3 G 2 I 4 H 5 1 J . 1 C [4.D] F [10.B] 3 D [3.A] B [0.

A] B [0.C] 2 I 4 H 5 1 J .D] F [10.B] E 3 G [9.-] 1 C [4.A] 5 7 1 4 2 [7.B] 3 El siguiente recorrido es hacia el nodo G y queda así. [9.3 A [3.C] D [3.

-] Tomamos como referencia al que tenga menor acumulación. 1 C [4.B] 3 D [3.B] E 3 G [9.3 A [3.C] 2 I 4 H 5 1 J .D] F [10.A] B [0.A] 5 7 1 4 2 [7. que es el nodo E.

B] 3 Moviéndonos del nodo E al H queda de esta manera.A] 5 7 1 4 2 [7. [10.E] D [3.3 A [3.D] F [10.E] 5 1 J .C] 2 I 4 H [10.A] B [0.-] 1 C [4.B] E 3 G [9.

B] [9.E] [3.A] 5 1 J .B] 3 5 7 D [3.C] 2 I 4 H [10.-] 1 C [4.A] 1 4 2 [7. B [0.E] E 3 G [9.3 A El nodo E también se puede dirigir al F.D] F [10. y como su suma es menor que 10 nos quedamos con la de menor número.E] [9.

B] 3 5 7 D [3.E] es menor que [10.-] 1 C [4.E] E 3 G [9.D] En este caso solo importa el primer numero que esta entre [3.A] 1 4 2 [7. B [0.B] nos quedamos con el primero.3 A Como [9.E] 5 1 J .C] 2 I 4 H [10.A] F [10.B] [9.

1 C [4. tomamos aleatoriamente el nodo F como nuestro nodo permanente.D] F [10.A] 5 7 1 4 2 [7.B] 3 D [3.-] Dado que tenemos que el nodo F y G tienen igual distancia.3 A [3.B] [9.E] 5 1 J .E] E 3 G [9.A] B [0.C] 2 I 4 H [10.

E] 5 1 J .A] B [0.B] [9. en este caso sería el nodo G nuestro nuevo nodo permanente.D] F [10.C] 2 I 4 H [10.-] Ahora tomamos el nodo con menor distancia entre H y G.E] E 3 G [9.A] 5 7 1 4 2 [7. 1 C [4.3 A [3.B] 3 D [3.

A] B [0.B] [9.C] 2 I 4 H [10.-] 1 C [4.E] E 3 G [9.3 A [3.B] 3 Se hace el recorrido del nodo G al I quedando: [11.A] 5 7 1 4 2 [7.D] F [10.G] .G] D [3.E] 5 1 J [11.

A] B [0.E] E 3 G [9.-] 1 C [4.3 A [3.D] F [10.B] 3 De nuevo tomamos el nodo con un acumulado menor como lo es el H.G] .B] [9. D [3.E] 5 1 J [11.C] 2 I 4 H [10.A] 5 7 1 4 2 [7.

A] B [0.H] D [3.B] [9.D] F [10.H] .B] 3 Seguimos el camino al nodo J quedando [15.G] 1 J [15.C] 2 I 4 H [10.3 A [3.-] 1 C [4.E] 5 [11.A] 5 7 1 4 2 [7.E] E 3 G [9.

E] 5 [11.D] F [10.-] 1 C [4.A] B [0.A] 5 7 1 4 2 [7.E] E 3 G [9.H] .G] 1 J [15.3 A [3.C] 2 I 4 H [10.B] [9. D [3.B] 3 Continuamos con el siguiente nodo que es el I.

I] .E] 5 [11.-] 1 C [4.I] D [3.D] [12.3 A [3.B] 3 Del nodo I al nodo J queda el siguiente camino que es 1 4 2 [7.B] [9.G] 1 J [15.A] B [0.C] 2 I 4 H [10.H] [12.A] 5 7 F [10.E] E 3 G [9.

H] [12.A] B [0.B] [9.G] 1 J [15.-] 1 C [4.B] 3 Dado que [12.D] F [10.3 A [3.E] 5 [11.I] .A] 5 7 1 4 2 [7.C] 2 I 4 H [10.E] E 3 G [9. D [3.I] es menor que [15.H] eliminamos el mayor y nos queda el resultado final.

El camino más corto para ir del punto A al punto J es el siguiente: I J A G12 DB A C B = .