Está en la página 1de 58

Algoritmo de Dijkstra

12 de Mayo de 2009

Algoritmo de Dijkstra.
Uno de los algoritmos m
as usados para la b
usqueda de caminos de peso mnimo es
el de Dijkstra, que proporciona los pesos mnimos desde un v
ertice dado al resto de
los v
ertices.

Algoritmo de Dijkstra

12 de Mayo de 2009

Algoritmo de Dijkstra.
Uno de los algoritmos m
as usados para la b
usqueda de caminos de peso mnimo es
el de Dijkstra, que proporciona los pesos mnimos desde un v
ertice dado al resto de
los v
ertices.
Sea un grafo o digrafo pesado, con V = {v1 , v2 , . . . , vn } su conjunto de v
ertices
y = (ij )nn su matriz de pesos, y sea vp el vertice inicial.

Algoritmo de Dijkstra

12 de Mayo de 2009

Algoritmo de Dijkstra.
Uno de los algoritmos m
as usados para la b
usqueda de caminos de peso mnimo es
el de Dijkstra, que proporciona los pesos mnimos desde un v
ertice dado al resto de
los v
ertices.
Sea un grafo o digrafo pesado, con V = {v1 , v2 , . . . , vn } su conjunto de v
ertices
y = (ij )nn su matriz de pesos, y sea vp el vertice inicial.
Dijkstra construye, en cada paso, un camino mnimo desde vp a otro v
ertice y
se detiene cuando ha construido uno para cada v
ertice (o no puede construir m
as).
Para ello se usan

Algoritmo de Dijkstra

12 de Mayo de 2009

Algoritmo de Dijkstra.
Uno de los algoritmos m
as usados para la b
usqueda de caminos de peso mnimo es
el de Dijkstra, que proporciona los pesos mnimos desde un v
ertice dado al resto de
los v
ertices.
Sea un grafo o digrafo pesado, con V = {v1 , v2 , . . . , vn } su conjunto de v
ertices
y = (ij )nn su matriz de pesos, y sea vp el vertice inicial.
Dijkstra construye, en cada paso, un camino mnimo desde vp a otro v
ertice y
se detiene cuando ha construido uno para cada v
ertice (o no puede construir m
as).
Para ello se usan
? una lista o conjunto: L , que contendr
a los v
ertices para los que hemos construimos un camino mnimo

Algoritmo de Dijkstra

12 de Mayo de 2009

Algoritmo de Dijkstra.
Uno de los algoritmos m
as usados para la b
usqueda de caminos de peso mnimo es
el de Dijkstra, que proporciona los pesos mnimos desde un v
ertice dado al resto de
los v
ertices.
Sea un grafo o digrafo pesado, con V = {v1 , v2 , . . . , vn } su conjunto de v
ertices
y = (ij )nn su matriz de pesos, y sea vp el vertice inicial.
Dijkstra construye, en cada paso, un camino mnimo desde vp a otro v
ertice y
se detiene cuando ha construido uno para cada v
ertice (o no puede construir m
as).
Para ello se usan
? una lista o conjunto: L , que contendr
a los v
ertices para los que hemos construimos un camino mnimo
? y un vector de pesos: D , que contendr
a al final los pesos mnimos.

Algoritmo de Dijkstra

12 de Mayo de 2009

Algoritmo de Dijkstra.
Uno de los algoritmos m
as usados para la b
usqueda de caminos de peso mnimo es
el de Dijkstra, que proporciona los pesos mnimos desde un v
ertice dado al resto de
los v
ertices.
Sea un grafo o digrafo pesado, con V = {v1 , v2 , . . . , vn } su conjunto de v
ertices
y = (ij )nn su matriz de pesos, y sea vp el vertice inicial.
Dijkstra construye, en cada paso, un camino mnimo desde vp a otro v
ertice y
se detiene cuando ha construido uno para cada v
ertice (o no puede construir m
as).
Para ello se usan
? una lista o conjunto: L , que contendr
a los v
ertices para los que hemos construimos un camino mnimo
? y un vector de pesos: D , que contendr
a al final los pesos mnimos.
Inicialmente L = {vp } y D = (p, : ) , la p -
esima fila de la matriz de pesos (la
correspondiente al v
ertice inicial).

Matlab 6.1.

Algoritmo de Dijkstra

12 de Mayo de 2009

Algoritmo de Dijkstra
inicio: ; vp ; L = {vp }; D = (p, : )
mientras sea V L 6=
tomar vk V L con D(k) mnimo
hacer L {vk }
para cada vj de V-L
si D(j) > D(k) + (k, j)
hacer D(j) = D(k) + (k, j)
fin
fin
fin
El vector D final contiene los pesos mnimos desde el v
ertice inicial a los dem
as
v
ertices si alguno de los pesos finales es , no hay camino desde el v
ertice inicial.

Algoritmo de Dijkstra

12 de Mayo de 2009

Algoritmo de Dijkstra
inicio: ; vp ; L = {vp }; D = (p, : )
mientras sea V L 6=
tomar vk V L con D(k) mnimo
hacer L {vk }
para cada vj de V-L
si D(j) > D(k) + (k, j)
hacer D(j) = D(k) + (k, j)
fin
fin
fin
El vector D final contiene los pesos mnimos desde el v
ertice inicial a los dem
as
v
ertices si alguno de los pesos finales es , no hay camino desde el v
ertice inicial.
Para la aplicaci
on del algoritmo con l
apiz y papel, se coloca el vector D inicial como
la primera fila de una tabla, de manera que en las filas sucesivas se van colocando
los nuevos valores de D tras cada minoraci
on.
Matlab 6.1.

Algoritmo de Dijkstra

12 de Mayo de 2009

Aplicaci
on Sea G ,
v2

3
v1

v3

v6

3
9

v4

5
7

v5

4
9

v7

Algoritmo de Dijkstra

12 de Mayo de 2009

Aplicaci
on Sea G , y su matriz de pesos
v2

3
v1

v3

v6

3
9

v4

5
7

v5

4
9

v7

v1
v2
v3
v4
v5
v6
v7

v1
0
3
9

v2
3
0
2
7
1

v3
9
2
0
7
1

v4

7
7
0
5
2
8

v5

1
1
5
0
9

v6

2
9
0
4

v7

4
0

Algoritmo de Dijkstra

12 de Mayo de 2009

v1
v2
v3
v4
v5
v6
v7

Aplicaci
on Sea G , y su matriz de pesos
v2

3
v1

v3

v6

3
9

v4

5
7

v5

4
9

v1
0
3
9

v2
3
0
2
7
1

v3
9
2
0
7
1

v4

7
7
0
5
2
8

v5

1
1
5
0
9

v6

2
9
0
4

v7

4
0

v7

L = {1} D(1) D(2) D(3) D(4) D(5) D(6) D(7)


0

Algoritmo de Dijkstra

12 de Mayo de 2009

v1
v2
v3
v4
v5
v6
v7

Aplicaci
on Sea G , y su matriz de pesos
v
y 2
[3]

v1

v4

[]

yv6

[]

[9]

v3

[]
y

v5

v1
0
3
9

v2
3
0
2
7
1

v3
9
2
0
7
1

v4

7
7
0
5
2
8

v5

1
1
5
0
9

v6

2
9
0
4

v7

4
0

[]

v7

L = {1} D(1) D(2) D(3) D(4) D(5) D(6) D(7)


0

Algoritmo de Dijkstra

12 de Mayo de 2009

v1
v2
v3
v4
v5
v6
v7

Aplicaci
on Sea G , y su matriz de pesos
v
y 2
[3]

v1

v4

[]

yv6

[]

[9]

v3

[]
y

v5

v1
0
3
9

v2
3
0
2
7
1

v3
9
2
0
7
1

v4

7
7
0
5
2
8

v5

1
1
5
0
9

v6

2
9
0
4

v7

4
0

[]

v7

mn{D(2), D(3), D(4), D(5), D(6), D(7)}

L = {1} D(1) D(2) D(3) D(4) D(5) D(6) D(7)


0

Algoritmo de Dijkstra

12 de Mayo de 2009

v1
v2
v3
v4
v5
v6
v7

Aplicaci
on Sea G , y su matriz de pesos
v
y 2
3
v1

v4

[]

yv6

[]

[9]

v3

[]
y

v5

v1
0
3
9

v2
3
0
2
7
1

v3
9
2
0
7
1

v4

7
7
0
5
2
8

v5

1
1
5
0
9

v6

2
9
0
4

v7

4
0

[]

v7

L = {1} D(1) D(2) D(3) D(4) D(5) D(6) D(7)


L {2}

Algoritmo de Dijkstra

12 de Mayo de 2009

v1
v2
v3
v4
v5
v6
v7

Aplicaci
on Sea G , y su matriz de pesos
v
y 2
3
v1

v4

[]

yv6

[]

[9]

v3

[]
y

v5

v1
0
3
9

v2
3
0
2
7
1

v3
9
2
0
7
1

v4

7
7
0
5
2
8

v5

1
1
5
0
9

v6

2
9
0
4

v7

4
0

[]

v7

L = {1} D(1) D(2) D(3) D(4) D(5) D(6) D(7)


L {2}

Algoritmo de Dijkstra

12 de Mayo de 2009

v1
v2
v3
v4
v5
v6
v7

Aplicaci
on Sea G , y su matriz de pesos
v
y 2
3
v1

v4

[]

yv6

[]

2
[9]

v3

[]
y

v5

[]

v1
0
3
9

v2
3
0
2
7
1

v3
9
2
0
7
1

v4

7
7
0
5
2
8

v5

1
1
5
0
9

v6

2
9
0
4

v7

4
0

D(3) < D(2) + (2, 3) ?

v7

9 <3+2

L = {1} D(1) D(2) D(3) D(4) D(5) D(6) D(7)


L {2}

Algoritmo de Dijkstra

12 de Mayo de 2009

v1
v2
v3
v4
v5
v6
v7

Aplicaci
on Sea G , y su matriz de pesos
v
y 2
3
v1

v4

[]

yv6

[]

[5]

v3

[]
y

v5

v1
0
3
9

v2
3
0
2
7
1

v3
9
2
0
7
1

v4

7
7
0
5
2
8

v5

1
1
5
0
9

v6

2
9
0
4

v7

4
0

[]

v7

L = {1} D(1) D(2) D(3) D(4) D(5) D(6) D(7)


L {2}

Algoritmo de Dijkstra

12 de Mayo de 2009

v1
v2
v3
v4
v5
v6
v7

Aplicaci
on Sea G , y su matriz de pesos
v
y 2
3
v1

v4

[]

yv6

[]

[5]

v3

[]
y

v5

[]

v1
0
3
9

v2
3
0
2
7
1

v3
9
2
0
7
1

v4

7
7
0
5
2
8

v5

1
1
5
0
9

v6

2
9
0
4

v7

4
0

D(4) < D(2) + (2, 4) ?

v7

<3+7

L = {1} D(1) D(2) D(3) D(4) D(5) D(6) D(7)


L {2}

Algoritmo de Dijkstra

12 de Mayo de 2009

v1
v2
v3
v4
v5
v6
v7

Aplicaci
on Sea G , y su matriz de pesos
v
y 2
3
v1

v4

[]

yv6

[ 10 ]

[5]

v3

[]
y

v5

v1
0
3
9

v2
3
0
2
7
1

v3
9
2
0
7
1

v4

7
7
0
5
2
8

v5

1
1
5
0
9

v6

2
9
0
4

v7

4
0

[]

v7

L = {1} D(1) D(2) D(3) D(4) D(5) D(6) D(7)


L {2}

10

Algoritmo de Dijkstra

12 de Mayo de 2009

v1
v2
v3
v4
v5
v6
v7

Aplicaci
on Sea G , y su matriz de pesos
v4

v
y 2
3
v1

[]

yv6

[ 10 ]

[5]

v3

[]
y

v5

[]

v1
0
3
9

v2
3
0
2
7
1

v3
9
2
0
7
1

v4

7
7
0
5
2
8

v5

1
1
5
0
9

v6

2
9
0
4

v7

4
0

D(5) < D(2) + (2, 5) ?

v7

<3+1

L = {1} D(1) D(2) D(3) D(4) D(5) D(6) D(7)


L {2}

10

Algoritmo de Dijkstra

12 de Mayo de 2009

v1
v2
v3
v4
v5
v6
v7

Aplicaci
on Sea G , y su matriz de pesos
v
y 2
3
v1

v4

[]

yv6

[ 10 ]

[5]

v3

[4]
y

v5

v1
0
3
9

v2
3
0
2
7
1

v3
9
2
0
7
1

v4

7
7
0
5
2
8

v5

1
1
5
0
9

v6

2
9
0
4

v7

4
0

[]

v7

L = {1} D(1) D(2) D(3) D(4) D(5) D(6) D(7)


L {2}

10

Algoritmo de Dijkstra

12 de Mayo de 2009

v1
v2
v3
v4
v5
v6
v7

Aplicaci
on Sea G , y su matriz de pesos
v
y 2
3
v1

v4

[]

yv6

[ 10 ]

[5]

v3

[4]
y

v5

[]

v1
0
3
9

v2
3
0
2
7
1

v3
9
2
0
7
1

v4

7
7
0
5
2
8

v5

1
1
5
0
9

v6

2
9
0
4

v7

4
0

D(6) < D(2) + (2, 6) ?

v7

<3+

L = {1} D(1) D(2) D(3) D(4) D(5) D(6) D(7)


L {2}

10

Algoritmo de Dijkstra

12 de Mayo de 2009

v1
v2
v3
v4
v5
v6
v7

Aplicaci
on Sea G , y su matriz de pesos
v
y 2
3
v1

v4

[]

yv6

[ 10 ]

[5]

v3

[4]
y

v5

v1
0
3
9

v2
3
0
2
7
1

v3
9
2
0
7
1

v4

7
7
0
5
2
8

v5

1
1
5
0
9

v6

2
9
0
4

v7

4
0

[]

v7

L = {1} D(1) D(2) D(3) D(4) D(5) D(6) D(7)


L {2}

10

Algoritmo de Dijkstra

12 de Mayo de 2009

v1
v2
v3
v4
v5
v6
v7

Aplicaci
on Sea G , y su matriz de pesos
v
y 2
3
v1

v4

[]

yv6

[ 10 ]

[5]

v3

[4]
y

v5

[]

v1
0
3
9

v2
3
0
2
7
1

v3
9
2
0
7
1

v4

7
7
0
5
2
8

v5

1
1
5
0
9

v6

2
9
0
4

v7

4
0

D(7) < D(2) + (2, 7) ?

v7

<3+

L = {1} D(1) D(2) D(3) D(4) D(5) D(6) D(7)


L {2}

10

Algoritmo de Dijkstra

12 de Mayo de 2009

v1
v2
v3
v4
v5
v6
v7

Aplicaci
on Sea G , y su matriz de pesos
v
y 2
3
v1

v4

[]

yv6

[ 10 ]

[5]

v3

[4]
y

v5

v1
0
3
9

v2
3
0
2
7
1

v3
9
2
0
7
1

v4

7
7
0
5
2
8

v5

1
1
5
0
9

v6

2
9
0
4

v7

4
0

[]

v7

L = {1} D(1) D(2) D(3) D(4) D(5) D(6) D(7)


L {2}

10

Algoritmo de Dijkstra

12 de Mayo de 2009

v1
v2
v3
v4
v5
v6
v7

Aplicaci
on Sea G , y su matriz de pesos
v
y 2
3
v1

v4

[]

yv6

[ 10 ]

[5]

v3

[4]
y

v5

v1
0
3
9

v2
3
0
2
7
1

v3
9
2
0
7
1

v4

7
7
0
5
2
8

v5

1
1
5
0
9

v6

2
9
0
4

v7

4
0

[]

v7

mn{D(3), D(4), D(5), D(6), D(7)}

L = {1} D(1) D(2) D(3) D(4) D(5) D(6) D(7)


L {2}

10

Algoritmo de Dijkstra

12 de Mayo de 2009

v1
v2
v3
v4
v5
v6
v7

Aplicaci
on Sea G , y su matriz de pesos
v4

v
y 2
3
v1

[]

yv6

[ 10 ]

[5]

v3

v5

v1
0
3
9

v2
3
0
2
7
1

v3
9
2
0
7
1

v4

7
7
0
5
2
8

v5

1
1
5
0
9

v6

2
9
0
4

v7

4
0

[]

v7

L = {1} D(1) D(2) D(3) D(4) D(5) D(6) D(7)


L {2}

L {5}

10

Algoritmo de Dijkstra

12 de Mayo de 2009

v1
v2
v3
v4
v5
v6
v7

Aplicaci
on Sea G , y su matriz de pesos
v4

v
y 2
3
v1

[]

yv6

[ 10 ]

[5]

v3

v5

v1
0
3
9

v2
3
0
2
7
1

v3
9
2
0
7
1

v4

7
7
0
5
2
8

v5

1
1
5
0
9

v6

2
9
0
4

v7

4
0

[]

v7

L = {1} D(1) D(2) D(3) D(4) D(5) D(6) D(7)


L {2}

L {5}

10

Algoritmo de Dijkstra

12 de Mayo de 2009

v1
v2
v3
v4
v5
v6
v7

Aplicaci
on Sea G , y su matriz de pesos
v4

v
y 2
3
v1

[]

yv6

[ 10 ]

[5]

v3

v5

[]

v1
0
3
9

v2
3
0
2
7
1

v3
9
2
0
7
1

v4

7
7
0
5
2
8

v5

1
1
5
0
9

v6

2
9
0
4

v7

4
0

D(3) < D(5) + (5, 3) ?

v7

5 <4+1

L = {1} D(1) D(2) D(3) D(4) D(5) D(6) D(7)


L {2}

L {5}

10

Algoritmo de Dijkstra

12 de Mayo de 2009

v1
v2
v3
v4
v5
v6
v7

Aplicaci
on Sea G , y su matriz de pesos
v4

v
y 2
3
v1

[]

yv6

[ 10 ]

[5]

v3

v5

v1
0
3
9

v2
3
0
2
7
1

v3
9
2
0
7
1

v4

7
7
0
5
2
8

v5

1
1
5
0
9

v6

2
9
0
4

v7

4
0

[]

v7

L = {1} D(1) D(2) D(3) D(4) D(5) D(6) D(7)


L {2}

L {5}

10

Algoritmo de Dijkstra

12 de Mayo de 2009

v1
v2
v3
v4
v5
v6
v7

Aplicaci
on Sea G , y su matriz de pesos
v4

v
y 2
3
v1

[]

yv6

[ 10 ]

5
[5]

v3

v5

[]

v1
0
3
9

v2
3
0
2
7
1

v3
9
2
0
7
1

v4

7
7
0
5
2
8

v5

1
1
5
0
9

v6

2
9
0
4

v7

4
0

D(4) < D(5) + (5, 4) ?

v7

10 < 4 + 5

L = {1} D(1) D(2) D(3) D(4) D(5) D(6) D(7)


L {2}

L {5}

10

Algoritmo de Dijkstra

12 de Mayo de 2009

v1
v2
v3
v4
v5
v6
v7

Aplicaci
on Sea G , y su matriz de pesos
v4

v
y 2
3
v1

[]

yv6

[9]

[5]

v3

v5

v1
0
3
9

v2
3
0
2
7
1

v3
9
2
0
7
1

v4

7
7
0
5
2
8

v5

1
1
5
0
9

v6

2
9
0
4

v7

4
0

[]

v7

L = {1} D(1) D(2) D(3) D(4) D(5) D(6) D(7)


L {2}

L {5}

10

Algoritmo de Dijkstra

12 de Mayo de 2009

v1
v2
v3
v4
v5
v6
v7

Aplicaci
on Sea G , y su matriz de pesos
v4

v
y 2
3
v1

[]

yv6

[9]

[5]

v3

v5

[]

v1
0
3
9

v2
3
0
2
7
1

v3
9
2
0
7
1

v4

7
7
0
5
2
8

v5

1
1
5
0
9

v6

2
9
0
4

v7

4
0

D(6) < D(5) + (5, 6) ?

v7

<4+9

L = {1} D(1) D(2) D(3) D(4) D(5) D(6) D(7)


L {2}

L {5}

10

Algoritmo de Dijkstra

12 de Mayo de 2009

v1
v2
v3
v4
v5
v6
v7

Aplicaci
on Sea G , y su matriz de pesos
v4

v
y 2
3
v1

[ 13 ]

yv6

[9]

[5]

v3

v5

v1
0
3
9

v2
3
0
2
7
1

v3
9
2
0
7
1

v4

7
7
0
5
2
8

v5

1
1
5
0
9

v6

2
9
0
4

v7

4
0

[]

v7

L = {1} D(1) D(2) D(3) D(4) D(5) D(6) D(7)


L {2}

L {5}

10

13

Algoritmo de Dijkstra

12 de Mayo de 2009

v1
v2
v3
v4
v5
v6
v7

Aplicaci
on Sea G , y su matriz de pesos
v4

v
y 2
3
v1

[ 13 ]

yv6

[9]

[5]

v3

v5

[]

v1
0
3
9

v2
3
0
2
7
1

v3
9
2
0
7
1

v4

7
7
0
5
2
8

v5

1
1
5
0
9

v6

2
9
0
4

v7

4
0

D(7) < D(5) + (5, 7) ?

v7

<4+

L = {1} D(1) D(2) D(3) D(4) D(5) D(6) D(7)


L {2}

L {5}

10

13

Algoritmo de Dijkstra

12 de Mayo de 2009

v1
v2
v3
v4
v5
v6
v7

Aplicaci
on Sea G , y su matriz de pesos
v4

v
y 2
3
v1

[ 13 ]

yv6

[9]

[5]

v3

v5

v1
0
3
9

v2
3
0
2
7
1

v3
9
2
0
7
1

v4

7
7
0
5
2
8

v5

1
1
5
0
9

v6

2
9
0
4

v7

4
0

[]

v7

L = {1} D(1) D(2) D(3) D(4) D(5) D(6) D(7)


L {2}

L {5}

10

13

Algoritmo de Dijkstra

12 de Mayo de 2009

v1
v2
v3
v4
v5
v6
v7

Aplicaci
on Sea G , y su matriz de pesos
v4

v
y 2
3
v1

[ 13 ]

yv6

[9]

[5]

v3

v5

v1
0
3
9

v2
3
0
2
7
1

v3
9
2
0
7
1

v4

7
7
0
5
2
8

v5

1
1
5
0
9

v6

2
9
0
4

v7

4
0

[]

v7

mn{D(3), D(4), D(6), D(7)}

L = {1} D(1) D(2) D(3) D(4) D(5) D(6) D(7)


L {2}

L {5}

10

13

Algoritmo de Dijkstra

12 de Mayo de 2009

v1
v2
v3
v4
v5
v6
v7

Aplicaci
on Sea G , y su matriz de pesos
v4

v
y 2
3
v1

[ 13 ]

yv6

[9]

1
2
y

v3

v5

v1
0
3
9

v2
3
0
2
7
1

v3
9
2
0
7
1

v4

7
7
0
5
2
8

v5

1
1
5
0
9

v6

2
9
0
4

v7

4
0

[]

v7

L = {1} D(1) D(2) D(3) D(4) D(5) D(6) D(7)


L {2}

L {5}

10

L {3}

13

Algoritmo de Dijkstra

12 de Mayo de 2009

v1
v2
v3
v4
v5
v6
v7

Aplicaci
on Sea G , y su matriz de pesos
v4

v
y 2
3
v1

[ 13 ]

yv6

[9]

1
2
y

v3

v5

v1
0
3
9

v2
3
0
2
7
1

v3
9
2
0
7
1

v4

7
7
0
5
2
8

v5

1
1
5
0
9

v6

2
9
0
4

v7

4
0

[]

v7

L = {1} D(1) D(2) D(3) D(4) D(5) D(6) D(7)


L {2}

L {5}

10

L {3}

13

Algoritmo de Dijkstra

12 de Mayo de 2009

v1
v2
v3
v4
v5
v6
v7

Aplicaci
on Sea G , y su matriz de pesos
v4

v
y 2
3
v1

[ 13 ]

yv6

[9]

1
2
y

v3

v5

[]

v1
0
3
9

v2
3
0
2
7
1

v3
9
2
0
7
1

v4

7
7
0
5
2
8

v5

1
1
5
0
9

v6

2
9
0
4

v7

4
0

D(4) < D(3) + (3, 4) ?

v7

9 <5+7

L = {1} D(1) D(2) D(3) D(4) D(5) D(6) D(7)


L {2}

L {5}

10

L {3}

13

Algoritmo de Dijkstra

12 de Mayo de 2009

v1
v2
v3
v4
v5
v6
v7

Aplicaci
on Sea G , y su matriz de pesos
v4

v
y 2
3
v1

[ 13 ]

yv6

[9]

1
2
y

v3

v5

v1
0
3
9

v2
3
0
2
7
1

v3
9
2
0
7
1

v4

7
7
0
5
2
8

v5

1
1
5
0
9

v6

2
9
0
4

v7

4
0

[]

v7

L = {1} D(1) D(2) D(3) D(4) D(5) D(6) D(7)


L {2}

L {5}

10

L {3}

13

Algoritmo de Dijkstra

12 de Mayo de 2009

v1
v2
v3
v4
v5
v6
v7

Aplicaci
on Sea G , y su matriz de pesos
v4

v
y 2
3
v1

[ 13 ]

yv6

[9]

1
2
y

v3

v5

[]

v1
0
3
9

v2
3
0
2
7
1

v3
9
2
0
7
1

v4

7
7
0
5
2
8

v5

1
1
5
0
9

v6

2
9
0
4

v7

4
0

D(6) < D(3) + (3, 6) ?

v7

13 < 5 +

L = {1} D(1) D(2) D(3) D(4) D(5) D(6) D(7)


L {2}

L {5}

10

L {3}

13

Algoritmo de Dijkstra

12 de Mayo de 2009

v1
v2
v3
v4
v5
v6
v7

Aplicaci
on Sea G , y su matriz de pesos
v4

v
y 2
3
v1

[ 13 ]

yv6

[9]

1
2
y

v3

v5

v1
0
3
9

v2
3
0
2
7
1

v3
9
2
0
7
1

v4

7
7
0
5
2
8

v5

1
1
5
0
9

v6

2
9
0
4

v7

4
0

[]

v7

L = {1} D(1) D(2) D(3) D(4) D(5) D(6) D(7)


L {2}

L {5}

10

L {3}

13

13

Algoritmo de Dijkstra

12 de Mayo de 2009

v1
v2
v3
v4
v5
v6
v7

Aplicaci
on Sea G , y su matriz de pesos
v4

v
y 2
3
v1

[ 13 ]

yv6

[9]

1
2
y

v3

v5

[]

v1
0
3
9

v2
3
0
2
7
1

v3
9
2
0
7
1

v4

7
7
0
5
2
8

v5

1
1
5
0
9

v6

2
9
0
4

v7

4
0

D(7) < D(3) + (3, 7) ?

v7

<5+

L = {1} D(1) D(2) D(3) D(4) D(5) D(6) D(7)


L {2}

L {5}

10

L {3}

13

13

Algoritmo de Dijkstra

12 de Mayo de 2009

v1
v2
v3
v4
v5
v6
v7

Aplicaci
on Sea G , y su matriz de pesos
v4

v
y 2
3
v1

[ 13 ]

yv6

[9]

1
2
y

v3

v5

v1
0
3
9

v2
3
0
2
7
1

v3
9
2
0
7
1

v4

7
7
0
5
2
8

v5

1
1
5
0
9

v6

2
9
0
4

v7

4
0

[]

v7

L = {1} D(1) D(2) D(3) D(4) D(5) D(6) D(7)


L {2}

L {5}

10

L {3}

13

13

Algoritmo de Dijkstra

12 de Mayo de 2009

v1
v2
v3
v4
v5
v6
v7

Aplicaci
on Sea G , y su matriz de pesos
v4

v
y 2
3
v1

[ 13 ]

yv6

[9]

1
2
y

v3

v5

v1
0
3
9

v2
3
0
2
7
1

v3
9
2
0
7
1

v4

7
7
0
5
2
8

v5

1
1
5
0
9

v6

2
9
0
4

v7

4
0

[]

v7

mn{D(4), D(6), D(7)}

L = {1} D(1) D(2) D(3) D(4) D(5) D(6) D(7)


L {2}

L {5}

10

L {3}

13

13

Algoritmo de Dijkstra

12 de Mayo de 2009

v1
v2
v3
v4
v5
v6
v7

Aplicaci
on Sea G , y su matriz de pesos
v4

v
y 2
3
v1

[ 13 ]

yv6

1
2

v3

v5

v1
0
3
9

v2
3
0
2
7
1

v3
9
2
0
7
1

v4

7
7
0
5
2
8

v5

1
1
5
0
9

v6

2
9
0
4

v7

4
0

[]

v7

L = {1} D(1) D(2) D(3) D(4) D(5) D(6) D(7)


L {2}

L {5}

10

L {3}

13

L {4}

13

Algoritmo de Dijkstra

12 de Mayo de 2009

v1
v2
v3
v4
v5
v6
v7

Aplicaci
on Sea G , y su matriz de pesos
v4

v
y 2
3
v1

[ 13 ]

yv6

1
2

v3

v5

v1
0
3
9

v2
3
0
2
7
1

v3
9
2
0
7
1

v4

7
7
0
5
2
8

v5

1
1
5
0
9

v6

2
9
0
4

v7

4
0

[]

v7

L = {1} D(1) D(2) D(3) D(4) D(5) D(6) D(7)


L {2}

L {5}

10

L {3}

13

L {4}

13

Algoritmo de Dijkstra

12 de Mayo de 2009

v1
v2
v3
v4
v5
v6
v7

Aplicaci
on Sea G , y su matriz de pesos
v4

v
y 2
3
v1

[ 13 ]

yv6

1
2

v3

v5

[]

v1
0
3
9

v2
3
0
2
7
1

v3
9
2
0
7
1

v4

7
7
0
5
2
8

v5

1
1
5
0
9

v6

2
9
0
4

v7

4
0

D(6) < D(4) + (4, 6) ?

v7

13 < 9 + 2

L = {1} D(1) D(2) D(3) D(4) D(5) D(6) D(7)


L {2}

L {5}

10

L {3}

13

L {4}

13

Algoritmo de Dijkstra

12 de Mayo de 2009

v1
v2
v3
v4
v5
v6
v7

Aplicaci
on Sea G , y su matriz de pesos
v4

v
y 2
3
v1

[ 11 ]

yv6

1
2

v3

v5

v1
0
3
9

v2
3
0
2
7
1

v3
9
2
0
7
1

v4

7
7
0
5
2
8

v5

1
1
5
0
9

v6

2
9
0
4

v7

4
0

[]

v7

L = {1} D(1) D(2) D(3) D(4) D(5) D(6) D(7)


L {2}

L {5}

10

L {3}

13

L {4}

13

11

Algoritmo de Dijkstra

12 de Mayo de 2009

v1
v2
v3
v4
v5
v6
v7

Aplicaci
on Sea G , y su matriz de pesos
v4

v
y 2
3
v1

yv6

1
2

v3

[ 11 ]

v5

[]

v1
0
3
9

v2
3
0
2
7
1

v3
9
2
0
7
1

v4

7
7
0
5
2
8

v5

1
1
5
0
9

v6

2
9
0
4

v7

4
0

D(7) < D(4) + (4, 7) ?

v7

<9+8

L = {1} D(1) D(2) D(3) D(4) D(5) D(6) D(7)


L {2}

L {5}

10

L {3}

13

L {4}

13

11

Algoritmo de Dijkstra

12 de Mayo de 2009

v1
v2
v3
v4
v5
v6
v7

Aplicaci
on Sea G , y su matriz de pesos
v4

v
y 2
3
v1

[ 11 ]

yv6

1
2

v3

v1
0
3
9

v2
3
0
2
7
1

v3
9
2
0
7
1

v4

7
7
0
5
2
8

v5

1
1
5
0
9

v6

2
9
0
4

v7

4
0

v5

v7
[ 17 ]
L = {1} D(1) D(2) D(3) D(4) D(5) D(6) D(7)
L {2}

L {5}

10

L {3}

13

L {4}

13

11

17

Algoritmo de Dijkstra

12 de Mayo de 2009

v1
v2
v3
v4
v5
v6
v7

Aplicaci
on Sea G , y su matriz de pesos
v4

v
y 2
3
v1

[ 11 ]

yv6

1
2

v3

v1
0
3
9

v2
3
0
2
7
1

v3
9
2
0
7
1

v4

7
7
0
5
2
8

v5

1
1
5
0
9

v6

2
9
0
4

v7

4
0

v5

v7

mn{D(6), D(7)}

[ 17 ]

L = {1} D(1) D(2) D(3) D(4) D(5) D(6) D(7)


L {2}

L {5}

10

L {3}

13

L {4}

13

11

17

Algoritmo de Dijkstra

12 de Mayo de 2009

v1
v2
v3
v4
v5
v6
v7

Aplicaci
on Sea G , y su matriz de pesos
v4

v
y 2
3
v1

yv6

1
2

v3

v1
0
3
9

v2
3
0
2
7
1

v3
9
2
0
7
1

v4

7
7
0
5
2
8

v5

1
1
5
0
9

v6

2
9
0
4

v7

4
0

v5

v7
[ 17 ]
L = {1} D(1) D(2) D(3) D(4) D(5) D(6) D(7)
L {2}

L {5}

10

L {3}

13

L {4}

13

L {6}

11

17

Algoritmo de Dijkstra

12 de Mayo de 2009

v1
v2
v3
v4
v5
v6
v7

Aplicaci
on Sea G , y su matriz de pesos
v4

v
y 2
3
v1

yv6

1
2

v3

v1
0
3
9

v2
3
0
2
7
1

v3
9
2
0
7
1

v4

7
7
0
5
2
8

v5

1
1
5
0
9

v6

2
9
0
4

v7

4
0

v5

v7
[ 17 ]
L = {1} D(1) D(2) D(3) D(4) D(5) D(6) D(7)
L {2}

L {5}

10

L {3}

13

L {4}

13

L {6}

11

17

11

Algoritmo de Dijkstra

12 de Mayo de 2009

v1
v2
v3
v4
v5
v6
v7

Aplicaci
on Sea G , y su matriz de pesos
v4

v
y 2
3
v1

yv6

1
2

v3

v5

v1
0
3
9

v2
3
0
2
7
1

v3
9
2
0
7
1

v4

7
7
0
5
2
8

v5

1
1
5
0
9

v6

2
9
0
4

v7

4
0

D(7) < D(6) + (6, 7) ?

v7
[ 17 ]

17 < 11 + 4

L = {1} D(1) D(2) D(3) D(4) D(5) D(6) D(7)

Matlab 6.1.

L {2}

L {5}

10

L {3}

13

L {4}

13

L {6}

11

17

11
3

Algoritmo de Dijkstra

12 de Mayo de 2009

v1
v2
v3
v4
v5
v6
v7

Aplicaci
on Sea G , y su matriz de pesos
v4

v
y 2
3
v1

yv6

1
2

v3

v1
0
3
9

v2
3
0
2
7
1

v3
9
2
0
7
1

v4

7
7
0
5
2
8

v5

1
1
5
0
9

v6

2
9
0
4

v7

4
0

v5

v7
[ 15 ]
L = {1} D(1) D(2) D(3) D(4) D(5) D(6) D(7)

Matlab 6.1.

L {2}

L {5}

10

L {3}

13

L {4}

13

L {6}

11

17

11

15
3

Algoritmo de Dijkstra

12 de Mayo de 2009

v1
v2
v3
v4
v5
v6
v7

Aplicaci
on Sea G , y su matriz de pesos
v4

v
y 2
3
v1

yv6

1
2

v3

v5

v1
0
3
9

v2
3
0
2
7
1

v3
9
2
0
7
1

v4

7
7
0
5
2
8

v5

1
1
5
0
9

v6

2
9
0
4

v7

4
0

v7

L = {1} D(1) D(2) D(3) D(4) D(5) D(6) D(7)

Matlab 6.1.

L {2}

L {5}

10

L {3}

13

L {4}

13

L {6}

11

17

L {7}

11

15
3

También podría gustarte