Sesion 12 GRAFOS
-
Upload
jenny-luciia-vega-g -
Category
Documents
-
view
27 -
download
0
description
Transcript of Sesion 12 GRAFOS
![Page 1: Sesion 12 GRAFOS](https://reader036.fdocuments.co/reader036/viewer/2022062314/55cf9146550346f57b8c34b6/html5/thumbnails/1.jpg)
GRAFOS Algoritmos
• Grafos Dirigidos
Algoritmo de Floyd – Warshall
• Grafos No Dirigidos
Algoritmo de Dijkstra
Algoritmo de Kruskal
Algoritmo de Prim
![Page 2: Sesion 12 GRAFOS](https://reader036.fdocuments.co/reader036/viewer/2022062314/55cf9146550346f57b8c34b6/html5/thumbnails/2.jpg)
Algoritmo Floyd WharshallMatriz de Pesos
![Page 3: Sesion 12 GRAFOS](https://reader036.fdocuments.co/reader036/viewer/2022062314/55cf9146550346f57b8c34b6/html5/thumbnails/3.jpg)
Algoritmo Floyd Wharshall
v2
v1
v5
v3
v4
7
41
1
2
2
1
0 7 2 -- --
-- 0 -- -- 1
-- 4 0 2 --
-- 1 -- 0 1
-- -- -- -- 0
Matriz de Pesos
v1
v2
v3
v4
v5
v1v2v3v4v5
![Page 4: Sesion 12 GRAFOS](https://reader036.fdocuments.co/reader036/viewer/2022062314/55cf9146550346f57b8c34b6/html5/thumbnails/4.jpg)
Algoritmo Floyd Wharshall
v2
v1
v5
v3
v4
7
41
1
2
2
1
0 7 2 -- --
-- 0 -- -- 1
-- 4 0 2 --
-- 1 -- 0 1
-- -- -- -- 0
USANDO v1 COMO VERTICE INTERMEDIO
De v1 a vi (2,3,4,5) No lo consideramos (v1 es vértice origen)
De v2a vi (3,4,5) No lo consideramos (vértice v2 a v1 es --)
De v3 a vi (2,4,5) No lo consideramos (vértice v3 a v1 es --)
De v4 a vi (2,3,5) No lo consideramos (vértice v4 a v1 es --)
De v5 a vi (2,3,4) No lo consideramos (vértice v5 a v1 es --)
No sea mejorado nada
v1
v2
v3
v4
v5
v1v2v3v4v5
![Page 5: Sesion 12 GRAFOS](https://reader036.fdocuments.co/reader036/viewer/2022062314/55cf9146550346f57b8c34b6/html5/thumbnails/5.jpg)
Algoritmo Floyd Wharshall
v2
v1
v5
v3
v4
7
41
1
2
2
1
USANDO v2 COMO VERTICE INTERMEDIO
0 7 2 -- 8
-- 0 -- -- 1
-- 4 0 2 --
-- 1 -- 0 1
-- -- -- -- 0
Ver si se puede rebajar el precio de 1 a 3, de y a 4 y de 1 a 5Analizar las rutas de v1 a v3 usando v2 como intermedio = --Analizar las rutas de v1 a v4 usando v2 como intermedio = --Analizar las rutas de v1 a v5 usando v2 como intermedio = 7+1=8
Estudiando V1 a los demas
v1
v2
v3
v4
v5
v1v2v3v4v5
![Page 6: Sesion 12 GRAFOS](https://reader036.fdocuments.co/reader036/viewer/2022062314/55cf9146550346f57b8c34b6/html5/thumbnails/6.jpg)
Algoritmo Floyd Wharshall
v2
v1
v5
v3
v4
7
41
1
2
2
1
USANDO v2 COMO VERTICE INTERMEDIO
0 7 2 -- 8
-- 0 -- -- 1
-- 4 0 2 --
-- 1 -- 0 1
-- -- -- -- 0
Por ser el intermedio no se considera nada
Estudiando V2 a los demás (v1, v3,v4,v5)
v1
v2
v3
v4
v5
v1v2v3v4v5
![Page 7: Sesion 12 GRAFOS](https://reader036.fdocuments.co/reader036/viewer/2022062314/55cf9146550346f57b8c34b6/html5/thumbnails/7.jpg)
Algoritmo Floyd Wharshall
v2
v1
v5
v3
v4
7
41
1
2
2
1
USANDO v2 COMO VERTICE INTERMEDIO
0 7 2 -- 8
-- 0 -- -- 1
-- 4 0 2 5
-- 1 -- 0 1
-- -- -- -- 0
Analizar las rutas de v3 a v1 usando v2 como intermedio = --Analizar las rutas de v3 a v4 usando v2 como intermedio = --Analizar las rutas de v3 a v5 usando v2 como intermedio = 4+1=5
Estudiando V3 a los demás (v1, v4,v5)
v1v2v3v4v5
v1
v2
v3
v4
v5
![Page 8: Sesion 12 GRAFOS](https://reader036.fdocuments.co/reader036/viewer/2022062314/55cf9146550346f57b8c34b6/html5/thumbnails/8.jpg)
Algoritmo Floyd Wharshall
v2
v1
v5
v3
v4
7
41
1
2
2
1
USANDO v2 COMO VERTICE INTERMEDIO
No se cambia por ser mayor
0 7 2 -- 8
-- 0 -- -- 1
-- 4 0 2 5
-- 1 -- 0 1
-- -- -- -- 0
Analizar las rutas de v4 a v1 usando v2 como intermedio = --Analizar las rutas de v4 a v3 usando v2 como intermedio = --Analizar las rutas de v4 a v5 usando v2 como intermedio = 1+1=2
Estudiando V4 a los demás (v1, v3,v5)
v1
v2
v3
v4
v5
v1v2v3v4v5
![Page 9: Sesion 12 GRAFOS](https://reader036.fdocuments.co/reader036/viewer/2022062314/55cf9146550346f57b8c34b6/html5/thumbnails/9.jpg)
Algoritmo Floyd Wharshall
v2
v1
v5
v3
v4
7
41
1
2
2
1
USANDO v2 COMO VERTICE INTERMEDIO
No se cambia no existe camino
0 7 2 -- 8
-- 0 -- -- 1
-- 4 0 2 5
-- 1 -- 0 1
-- -- -- -- 0
Analizar las rutas de v5 a v1 usando v2 como intermedio = --Analizar las rutas de v5 a v3 usando v2 como intermedio = --Analizar las rutas de v5 a v4 usando v2 como intermedio = --
Estudiando V5 a los demás (v1, v3,v4)
v1
v2
v3
v4
v5
v1v2v3v4v5
![Page 10: Sesion 12 GRAFOS](https://reader036.fdocuments.co/reader036/viewer/2022062314/55cf9146550346f57b8c34b6/html5/thumbnails/10.jpg)
Algoritmo Floyd Wharshall
v2
v1
v5
v3
v4
7
41
1
2
2
1
USANDO v3 COMO VERTICE INTERMEDIO
0 6 2 4 5
-- 0 -- -- 1
-- 4 0 2 5
-- 1 -- 0 1
-- -- -- -- 0
Analizar las rutas de v1 a v2 usando v3 como intermedio = 6Analizar las rutas de v1 a v4 usando v3 como intermedio = 4Analizar las rutas de v1 a v5 usando v3 como intermedio = 5
Desde v1
Se analizaran v2, v4, v5
v1
v2
v3
v4
v5
v1v2v3v4v5
![Page 11: Sesion 12 GRAFOS](https://reader036.fdocuments.co/reader036/viewer/2022062314/55cf9146550346f57b8c34b6/html5/thumbnails/11.jpg)
Algoritmo Floyd Wharshall
v2
v1
v5
v3
v4
7
41
1
2
2
1
USANDO v3 COMO VERTICE INTERMEDIO
0 6 2 4 5
-- 0 -- -- 1
-- 4 0 2 5
-- 1 -- 0 1
-- -- -- -- 0
No se considera, no existe conexion
Desde v2
v1
v2
v3
v4
v5
v1v2v3v4v5
![Page 12: Sesion 12 GRAFOS](https://reader036.fdocuments.co/reader036/viewer/2022062314/55cf9146550346f57b8c34b6/html5/thumbnails/12.jpg)
Algoritmo Floyd Wharshall
v2
v1
v5
v3
v4
7
41
1
2
2
1
USANDO v3 COMO VERTICE INTERMEDIO
0 5 2 4 5
-- 0 -- -- 1
-- 4 0 2 5
-- 1 -- 0 1
-- -- -- -- 0
No se considera, no existe conexion
Desde v4
No se considera, no existe conexion
Desde v5
Desde v3No se considera por ser intermedio
v1
v2
v3
v4
v5
v1v2v3v4v5
![Page 13: Sesion 12 GRAFOS](https://reader036.fdocuments.co/reader036/viewer/2022062314/55cf9146550346f57b8c34b6/html5/thumbnails/13.jpg)
Algoritmo Floyd Wharshall
v2
v1
v5
v3
v4
7
41
1
2
2
1
USANDO v4 COMO VERTICE INTERMEDIO
0 5 2 4 5
-- 0 -- -- 1
-- 4 0 2 5
-- 1 -- 0 1
-- -- -- -- 0
2+2+1= 5P(v1,v2)
Desde v1, pasando por v4, se analizaran v2, v3 y v5
--P(v1,v3)2+2+1= 5P(v1,v5)
Reemplaza por ser menor que 6
Reemplaza por ser menor que 7
v1
v2
v3
v4
v5
v1v2v3v4v5
![Page 14: Sesion 12 GRAFOS](https://reader036.fdocuments.co/reader036/viewer/2022062314/55cf9146550346f57b8c34b6/html5/thumbnails/14.jpg)
Algoritmo Floyd Wharshall
v2
v1
v5
v3
v4
7
41
1
2
2
1
USANDO v4 COMO VERTICE INTERMEDIO
0 5 2 4 5
-- 0 -- -- 1
-- 4 0 2 5
-- 1 -- 0 1
-- -- -- -- 0
--P(v2,v1)
Desde v2, pasando por v4, se analizaran v1, v3 y v5
--P(v2,v3)--P(v2,v5)
v1
v2
v3
v4
v5
v1v2v3v4v5
![Page 15: Sesion 12 GRAFOS](https://reader036.fdocuments.co/reader036/viewer/2022062314/55cf9146550346f57b8c34b6/html5/thumbnails/15.jpg)
Algoritmo Floyd Wharshall
v2
v1
v5
v3
v4
7
41
1
2
2
1
USANDO v4 COMO VERTICE INTERMEDIO
0 5 2 4 5
-- 0 -- -- 1
-- 3 0 2 3
-- 1 -- 0 1
-- -- -- -- 0
--P(v3,v1)
Desde v3, pasando por v4, se analizaran v1, v2 y v5
3P(v3,v2)3P(v3,v5)
v1
v2
v3
v4
v5
v1v2v3v4v5
![Page 16: Sesion 12 GRAFOS](https://reader036.fdocuments.co/reader036/viewer/2022062314/55cf9146550346f57b8c34b6/html5/thumbnails/16.jpg)
Algoritmo Floyd Wharshall
v2
v1
v5
v3
v4
7
41
1
2
2
1
USANDO v4 COMO VERTICE INTERMEDIO
0 5 2 4 5
-- 0 -- -- 1
-- 3 0 2 3
-- 1 -- 0 1
-- -- -- -- 0
--P(v3,v1)
Desde v3, pasando por v4, se analizaran v1, v2 y v5
3P(v3,v2)3P(v3,v5)
No se considera v4 por ser el intermedioNo se considera v5 por ser infinito
v1
v2
v3
v4
v5
v1v2v3v4v5
![Page 17: Sesion 12 GRAFOS](https://reader036.fdocuments.co/reader036/viewer/2022062314/55cf9146550346f57b8c34b6/html5/thumbnails/17.jpg)
Algoritmo Floyd Wharshall
v2
v1
v5
v3
v4
7
41
1
2
2
1
USANDO v5 COMO VERTICE INTERMEDIO
0 5 2 4 5
-- 0 -- -- 1
-- 3 0 2 3
-- 1 -- 0 1
-- -- -- -- 0
V5 es infinito en todos los casos, no se considera ninguno
v1
v2
v3
v4
v5
v1v2v3v4v5
![Page 18: Sesion 12 GRAFOS](https://reader036.fdocuments.co/reader036/viewer/2022062314/55cf9146550346f57b8c34b6/html5/thumbnails/18.jpg)
Matriz de PesosAlgoritmo Floyd Wharshall
v2
v1
v5
v3
v4
7
41
1
2
2
1
RESULTADO0 5 2 4 5
-- 0 -- -- 1
-- 3 0 2 3
-- 1 -- 0 1
-- -- -- -- 0
V5 es infinito en todos los casos, no se considera ninguno
Matriz de camino mas corto
v1
v2
v3
v4
v5
v1v2v3v4v5
![Page 19: Sesion 12 GRAFOS](https://reader036.fdocuments.co/reader036/viewer/2022062314/55cf9146550346f57b8c34b6/html5/thumbnails/19.jpg)
Grafos No DirigidosSon estructuras abstractas, por tanto se deben apoyar de otras estructuras para su representación en memoria
Las dos representaciones mas utilizadas son:
• Matriz de Adyacencia
• Lista de Adyacencia
![Page 20: Sesion 12 GRAFOS](https://reader036.fdocuments.co/reader036/viewer/2022062314/55cf9146550346f57b8c34b6/html5/thumbnails/20.jpg)
Grafos No Dirigidos
Un gráfo no dirigida G=(V,A) consta de un numero finito de vértices V y un numero finito de Aristas A. Se diferencia de un grafo dirigido en que cada arista de A es un par no ordenado de vértices.
Si (u,v) es una arista de un grafo no dirigido, entonces (u,v)=(v,u)
![Page 21: Sesion 12 GRAFOS](https://reader036.fdocuments.co/reader036/viewer/2022062314/55cf9146550346f57b8c34b6/html5/thumbnails/21.jpg)
Matriz de Adyacencia
![Page 22: Sesion 12 GRAFOS](https://reader036.fdocuments.co/reader036/viewer/2022062314/55cf9146550346f57b8c34b6/html5/thumbnails/22.jpg)
Representación con Listas
![Page 23: Sesion 12 GRAFOS](https://reader036.fdocuments.co/reader036/viewer/2022062314/55cf9146550346f57b8c34b6/html5/thumbnails/23.jpg)
Algoritmo de Dijkstra
Llamado también Algoritmo de Caminos minimos
![Page 24: Sesion 12 GRAFOS](https://reader036.fdocuments.co/reader036/viewer/2022062314/55cf9146550346f57b8c34b6/html5/thumbnails/24.jpg)
Ejemplo: Calcular el camino mas corto entre s y t
VERTICE PASO 1 PASO 2 PASO 3 PASO 4 PASO 5 PASO 6
s (0,s)
b
c
d
e
t
s
b
c
d
e
t1
2
5
4
10
6
2
28
• Empieza por vértice s
• Distancia de s a s es cero
• Se coloca como definitivo
![Page 25: Sesion 12 GRAFOS](https://reader036.fdocuments.co/reader036/viewer/2022062314/55cf9146550346f57b8c34b6/html5/thumbnails/25.jpg)
Ejemplo: Calcular el camino mas corto entre s y t
VERTICE PASO 1 PASO 2 PASO 3 PASO 4 PASO 5 PASO 6
s (0,s) X X X X X
b (4,s)
c (2,s)
d ooe oo
t oo
s
b
c
d
e
t1
2
5
4
10
6
2
28
• Distancia de b a s es cuatro
• Se coloca como definitivo
Vectores adyacentes a s: b y c
![Page 26: Sesion 12 GRAFOS](https://reader036.fdocuments.co/reader036/viewer/2022062314/55cf9146550346f57b8c34b6/html5/thumbnails/26.jpg)
Ejemplo: Calcular el camino mas corto entre s y t
VERTICE PASO 1 PASO 2 PASO 3 PASO 4 PASO 5 PASO 6
s (0,s) X X X X X
b (4,s)
c (2,s) (2,s) X X X X
d ooe oo
t oo
s
b
c
d
e
t1
2
5
4
10
6
2
28
• S a c pesa menos• Se pasa a la sgte
columna y se determina definitiva
Vectores adyacentes a s: b y c
![Page 27: Sesion 12 GRAFOS](https://reader036.fdocuments.co/reader036/viewer/2022062314/55cf9146550346f57b8c34b6/html5/thumbnails/27.jpg)
Ejemplo: Calcular el camino mas corto entre s y t
VERTICE PASO 1 PASO 2 PASO 3 PASO 4 PASO 5 PASO 6
s (0,s) X X X X X
b (4,s) (3,c) (3,c) X X X
c (2,s) (2,s) X X X X
d oo (10,c)
e oo (12,c)
t oo oo
s
b
c
d
e
t1
2
5
4
10
6
2
28
• Pesa 1+2=3• Entre 3, 10 y 12, el
3 pesa menos• Asigna etiqueta
definitiva
Vectores d y e son adyacentesa: b y c
![Page 28: Sesion 12 GRAFOS](https://reader036.fdocuments.co/reader036/viewer/2022062314/55cf9146550346f57b8c34b6/html5/thumbnails/28.jpg)
Ejemplo: Calcular el camino mas corto entre s y t
VERTICE PASO 1 PASO 2 PASO 3 PASO 4 PASO 5 PASO 6
s (0,s) X X X X X
b (4,s) (3,c) (3,c) X X X
c (2,s) (2,s) X X X X
d oo (10,c) (8,b) (8,b) X X
e oo (12,c) (12,c)
t oo oo oo
s
b
c
d
e
t1
2
5
4
10
6
2
28
• Entre 8 y 12 el menor es 8, se traslada y se y se fija
Vectores d y e son adyacentesa: b y c
![Page 29: Sesion 12 GRAFOS](https://reader036.fdocuments.co/reader036/viewer/2022062314/55cf9146550346f57b8c34b6/html5/thumbnails/29.jpg)
Ejemplo: Calcular el camino mas corto entre s y t
VERTICE PASO 1 PASO 2 PASO 3 PASO 4 PASO 5 PASO 6
s (0,s) X X X X X
b (4,s) (3,c) (3,c) X X X
c (2,s) (2,s) X X X X
d oo (10,c) (8,b) (8,b) X X
e oo (12,c) (12,c) (10,d)
t oo oo oo (14,d)
s
b
c
d
e
t1
2
5
4
10
6
2
28
• Vertice e referido por d para llegar a s 2+1+5+2=10 , por ser menor a 12, se registra
Vectores d y e son adyacentesa: b y c
![Page 30: Sesion 12 GRAFOS](https://reader036.fdocuments.co/reader036/viewer/2022062314/55cf9146550346f57b8c34b6/html5/thumbnails/30.jpg)
Ejemplo: Calcular el camino mas corto entre s y t
VERTICE PASO 1 PASO 2 PASO 3 PASO 4 PASO 5 PASO 6
s (0,s) X X X X X
b (4,s) (3,c) (3,c) X X X
c (2,s) (2,s) X X X X
d oo (10,c) (8,b) (8,b) X X
e oo (12,c) (12,c) (10,d) (10,d) X
t oo oo oo (14,d) (13,e)
s
b
c
d
e
t1
2
5
4
10
6
3
28
• Entre 10 y 14 el qu3e menos pesa es 10, se traslada y se marcan los demás
• Se coloca como definitiva
Vectores d y e son adyacentesa: b y c
![Page 31: Sesion 12 GRAFOS](https://reader036.fdocuments.co/reader036/viewer/2022062314/55cf9146550346f57b8c34b6/html5/thumbnails/31.jpg)
Ejemplo: Calcular el camino mas corto entre s y t
VERTICE PASO 1 PASO 2 PASO 3 PASO 4 PASO 5 PASO 6
s (0,s) X X X X X
b (4,s) (3,c) (3,c) X X X
c (2,s) (2,s) X X X X
d oo (10,c) (8,b) (8,b) X X
e oo (12,c) (12,c) (10,d) (10,d) X
t oo oo oo (14,d) (13,e) (13,e)
s
b
c
d
e
t1
2
5
4
10
6
3
28
• Entre 10 y 14 el que menos pesa es 10, se traslada y se marcan los demás
• Se coloca como definitiva
Vectores d y e son adyacentesa: b y c
![Page 32: Sesion 12 GRAFOS](https://reader036.fdocuments.co/reader036/viewer/2022062314/55cf9146550346f57b8c34b6/html5/thumbnails/32.jpg)
Resultado
El peso minimo es 13, camino minimo de s a t
s
b
c
d
e
t1
2
5
4
10
6
3
28
![Page 33: Sesion 12 GRAFOS](https://reader036.fdocuments.co/reader036/viewer/2022062314/55cf9146550346f57b8c34b6/html5/thumbnails/33.jpg)
Grafos Dirigidos – Algoritmo de Dijstramétodo de etiquetas
![Page 34: Sesion 12 GRAFOS](https://reader036.fdocuments.co/reader036/viewer/2022062314/55cf9146550346f57b8c34b6/html5/thumbnails/34.jpg)
Algoritmo de Dijstra con grafos Dirigidos - Ejercicio Calcular la ruta y la distancia mas corta desde el vertice 1 al
vertice 6 aplicando el método de Dijkstra
2 4
6
53
1
1
1
3
2
4
2
2
![Page 35: Sesion 12 GRAFOS](https://reader036.fdocuments.co/reader036/viewer/2022062314/55cf9146550346f57b8c34b6/html5/thumbnails/35.jpg)
Etiquetado
[8,B](2)
Numero de iteración
Valor Acumulad
o
Vertice de donde
procede (antecesor)
![Page 36: Sesion 12 GRAFOS](https://reader036.fdocuments.co/reader036/viewer/2022062314/55cf9146550346f57b8c34b6/html5/thumbnails/36.jpg)
2 4
6
53
1
1
1
3
2
4
2
2
Algoritmo de Dijkstra
[0,-](0)
[2,1](1)
[4,3](2)
[5,4](4)
[1,1](1)
[5,3](2)
1
[3,2](3)
2
3
4
5
6
RUTA:
Distancia: 5
64 -
2 -
1 -
![Page 37: Sesion 12 GRAFOS](https://reader036.fdocuments.co/reader036/viewer/2022062314/55cf9146550346f57b8c34b6/html5/thumbnails/37.jpg)
Algoritmo de Primalgoritmo DJP o algoritmo de Jarnik
![Page 38: Sesion 12 GRAFOS](https://reader036.fdocuments.co/reader036/viewer/2022062314/55cf9146550346f57b8c34b6/html5/thumbnails/38.jpg)
Algoritmo de Prim
El algoritmo encuentra un subconjunto de aristas que forman un árbol con todos los vértices
Permite encontrar un árbol de cubrimiento mínimo Arbol conexo Grafo no Dirigido Aristas se encuentran etiquetadas con números
enteros positivos
![Page 39: Sesion 12 GRAFOS](https://reader036.fdocuments.co/reader036/viewer/2022062314/55cf9146550346f57b8c34b6/html5/thumbnails/39.jpg)
Arbol de Cubrimiento Minimo
Sea G=(V,A) un grafo conexo con una función de costos definida sobre las aristas. Un árbol de cubrimiento para G es un árbol libre que conecta todos los vértices en V
![Page 40: Sesion 12 GRAFOS](https://reader036.fdocuments.co/reader036/viewer/2022062314/55cf9146550346f57b8c34b6/html5/thumbnails/40.jpg)
Grafo ConexoEn teoría de grafos, un grafo se dice conexo si, para cualquier par de vértices a y b en G, existe al menos una trayectoria (una sucesión de vértices adyacentes que no repita vértices) de a a b.
![Page 41: Sesion 12 GRAFOS](https://reader036.fdocuments.co/reader036/viewer/2022062314/55cf9146550346f57b8c34b6/html5/thumbnails/41.jpg)
Árbol de Expansión Mínima Dado un grafo conexo, no dirigido y con pesos en las aristas, un árbol de expansión
mínima es un árbol compuesto por todos los vértices y cuya suma de sus aristas es la de menor peso. Al siguiente ejemplo le agregamos pesos a sus aristas y obtenemos los arboles de expansiones siguientes:
El árbol de expansión mínima seria el primer árbol de expansión cuyo peso total es 6.
El problema de hallar el Árbol de Expansión Mínima (MST) puede ser resuelto con varios algoritmos, los mas conocidos con Prim y Kruskal
![Page 42: Sesion 12 GRAFOS](https://reader036.fdocuments.co/reader036/viewer/2022062314/55cf9146550346f57b8c34b6/html5/thumbnails/42.jpg)
Arbol de Cubrimiento Minimo¿Como funciona?
El algoritmo incrementa continuamente el tamaño del árbol, comenzando por un vértice inicial al que se le va agregando vértices, cuya distancia a los anteriores debe ser mínima
![Page 43: Sesion 12 GRAFOS](https://reader036.fdocuments.co/reader036/viewer/2022062314/55cf9146550346f57b8c34b6/html5/thumbnails/43.jpg)
Caso Ejemplo – Algoritmo de Prim
![Page 44: Sesion 12 GRAFOS](https://reader036.fdocuments.co/reader036/viewer/2022062314/55cf9146550346f57b8c34b6/html5/thumbnails/44.jpg)
![Page 45: Sesion 12 GRAFOS](https://reader036.fdocuments.co/reader036/viewer/2022062314/55cf9146550346f57b8c34b6/html5/thumbnails/45.jpg)
Algoritmo de Kruskal
Joseph B. Kruskal (29 de enero de 1928 – Maplewood, Nueva Jersey, 19 de septiembre de
2010) fue un matemático y estadístico estadounidense.
![Page 46: Sesion 12 GRAFOS](https://reader036.fdocuments.co/reader036/viewer/2022062314/55cf9146550346f57b8c34b6/html5/thumbnails/46.jpg)
Algoritmo de Kruskal
Este algoritmo resuelve la misma clase de problema que el algoritmo de Prim, con la única diferencia que en este caso no partimos desde ningún nodo elegido al azar
![Page 47: Sesion 12 GRAFOS](https://reader036.fdocuments.co/reader036/viewer/2022062314/55cf9146550346f57b8c34b6/html5/thumbnails/47.jpg)
Como trabaja:
Primeramente ordenaremos las aristas del grafo por su peso de menor a mayor. Mediante la técnica greedy. Kruskal intentará unir cada arista siempre y cuando no se forme un ciclo.
Como hemos ordenado las aristas por peso comenzaremos con la arista de menor peso, si los vértices que contienen dicha arista no están en la misma componente conexa entonces los unimos para formar una sola componente,
![Page 48: Sesion 12 GRAFOS](https://reader036.fdocuments.co/reader036/viewer/2022062314/55cf9146550346f57b8c34b6/html5/thumbnails/48.jpg)
B
A
C
8
10
12
ARBOL DE MINIMO COSTE
B
A
C
8
10
12
ARBOL DE MAXIMO COSTE
B
A
C
8
10
12
![Page 49: Sesion 12 GRAFOS](https://reader036.fdocuments.co/reader036/viewer/2022062314/55cf9146550346f57b8c34b6/html5/thumbnails/49.jpg)
Arbol generador de minimo costeAlgoritmo de Kruskal
![Page 50: Sesion 12 GRAFOS](https://reader036.fdocuments.co/reader036/viewer/2022062314/55cf9146550346f57b8c34b6/html5/thumbnails/50.jpg)
![Page 51: Sesion 12 GRAFOS](https://reader036.fdocuments.co/reader036/viewer/2022062314/55cf9146550346f57b8c34b6/html5/thumbnails/51.jpg)
![Page 52: Sesion 12 GRAFOS](https://reader036.fdocuments.co/reader036/viewer/2022062314/55cf9146550346f57b8c34b6/html5/thumbnails/52.jpg)
![Page 53: Sesion 12 GRAFOS](https://reader036.fdocuments.co/reader036/viewer/2022062314/55cf9146550346f57b8c34b6/html5/thumbnails/53.jpg)
![Page 54: Sesion 12 GRAFOS](https://reader036.fdocuments.co/reader036/viewer/2022062314/55cf9146550346f57b8c34b6/html5/thumbnails/54.jpg)
![Page 55: Sesion 12 GRAFOS](https://reader036.fdocuments.co/reader036/viewer/2022062314/55cf9146550346f57b8c34b6/html5/thumbnails/55.jpg)
![Page 56: Sesion 12 GRAFOS](https://reader036.fdocuments.co/reader036/viewer/2022062314/55cf9146550346f57b8c34b6/html5/thumbnails/56.jpg)
![Page 57: Sesion 12 GRAFOS](https://reader036.fdocuments.co/reader036/viewer/2022062314/55cf9146550346f57b8c34b6/html5/thumbnails/57.jpg)
![Page 58: Sesion 12 GRAFOS](https://reader036.fdocuments.co/reader036/viewer/2022062314/55cf9146550346f57b8c34b6/html5/thumbnails/58.jpg)
![Page 59: Sesion 12 GRAFOS](https://reader036.fdocuments.co/reader036/viewer/2022062314/55cf9146550346f57b8c34b6/html5/thumbnails/59.jpg)
![Page 60: Sesion 12 GRAFOS](https://reader036.fdocuments.co/reader036/viewer/2022062314/55cf9146550346f57b8c34b6/html5/thumbnails/60.jpg)
GRAFOSEjercicios
![Page 61: Sesion 12 GRAFOS](https://reader036.fdocuments.co/reader036/viewer/2022062314/55cf9146550346f57b8c34b6/html5/thumbnails/61.jpg)
Ejercicio Practico
Utilizando el algoritmo de Dijtstra, trace el camino minimo que hay entre a y z. Calcule su peso
z
e
f
d
g a
1
2
2
35
2
c b
11
1
1
5 4
![Page 62: Sesion 12 GRAFOS](https://reader036.fdocuments.co/reader036/viewer/2022062314/55cf9146550346f57b8c34b6/html5/thumbnails/62.jpg)
RESULTADO Ejercicio Practico
Peso del camino es 9
z
e
f
d
g a
1
2
2
35
2
c b
11
1
1
5 4
![Page 63: Sesion 12 GRAFOS](https://reader036.fdocuments.co/reader036/viewer/2022062314/55cf9146550346f57b8c34b6/html5/thumbnails/63.jpg)
s
b
a
c
d
e
1
2
5
4
10
3
2
8
6
f
t
3
95
![Page 64: Sesion 12 GRAFOS](https://reader036.fdocuments.co/reader036/viewer/2022062314/55cf9146550346f57b8c34b6/html5/thumbnails/64.jpg)
Aplicar el algoritmo de Kruskal para obtener el camino de ruta mínima