Documentos de Académico
Documentos de Profesional
Documentos de Cultura
MD Tema 4 PDF
MD Tema 4 PDF
Introducción
Tema 4: Teoría de Grafos Los grafos se utilizan para modelar situaciones en las que se relacionan
entre sí pares de objetos de una determinada colección.
b d
f
a e
Agustín Valverde (UMA) Tema 4: Teoría de Grafos 1 / 178 Agustín Valverde (UMA) Tema 4: Teoría de Grafos 3 / 178
4.0 Introducción
4.1 Nociones básicas en teoría de grafos Podemos utilizar los grafos para:
Estudiar las combinaciones diferentes de vuelos entre dos ciudades de
4.2 Conexión en grafos
una red aérea,
4.3 Grafos Eulerianos y Hamiltonianos
determinar si es posible recorrer todas las calles de una parte de una
4.4 Isomorfismo de grafos ciudad sin pasar dos veces por la misma calle,
4.5 Planaridad encontrar el camino más corto entre dos ciudades en una red de
transporte,
4.6 Coloración de Grafos
programar exámenes y asignar canales a las emisoras de televisión,
4.7 Árboles hallar el número de colores que se necesitan para colorear un mapa.
4.8 Grafos Ponderados
Agustín Valverde (UMA) Tema 4: Teoría de Grafos 2 / 178 Agustín Valverde (UMA) Tema 4: Teoría de Grafos 4 / 178
Tema 4: Teoría de Grafos 4.1 Nociones básicas en teoría de grafos
Introducción Otros tipos
Z Z
B B
M M
V V
En particular, en ciencias de la computación podemos utilizar los grafos PM PM
para: S S
determinar si se puede implementar un circuito sobre una placa de una Ma Ma
Multigrafo Pseudografo
sola capa,
Z Z
estudiar la estructura de una red informática, B B
M M
construir modelos para redes informáticas y determinar si dos V V
PM PM
ordenadores están conectados entre sí.
S S
Ma Ma
Grafo dirigido Multigrafo dirigido
Agustín Valverde (UMA) Tema 4: Teoría de Grafos 5 / 178 Agustín Valverde (UMA) Tema 4: Teoría de Grafos 7 / 178
4.1 Nociones básicas en teoría de grafos 4.1 Nociones básicas en teoría de grafos
Tipos de grafos Tipos de grafos
Definición
Un grafo (simple) es un par G = (V, E) consta de
un conjunto no vacío V de vértices,
Tipos de Aristas/ ¿Aristas/Arcos Múltiples ¿Bucles
un conjunto E de pares no ordenados de elementos distintos de V
grafos Arcos permitidos? permitidos?
llamados aristas.
Grafo simple No dirigidas No No
Ejemplo Z Multigrafo No dirigidas Sí No
B
Pseudografo No dirigidas Sí Sí
M V
PM Grafo dirigido Dirigidos No Sí
Se Multigrafo dirigido Dirigidos Sí Sí
Ma
Ejemplo c
Definición
Sean u y v dos vértices de un grafo G = (V, E). Se dice que
los vértices u y v son adyacentes si {u, v} es una arista de G. b d
la arista e = {u, v} es incidente con los vértices u y v.
f
También se dice que
a e
los vértices u y v son extremos de la arista e = {u, v}
la arista e = {u, v} conecta a los vértices u y v.
(a) = 3; (b) = 4; (c) = 2; (d) = 4; (e) = 3; (f) = 4
Agustín Valverde (UMA) Tema 4: Teoría de Grafos 9 / 178 Agustín Valverde (UMA) Tema 4: Teoría de Grafos 11 / 178
4.1 Nociones básicas en teoría de grafos 4.1 Nociones básicas en teoría de grafos
Terminología básica Terminología básica
Agustín Valverde (UMA) Tema 4: Teoría de Grafos 10 / 178 Agustín Valverde (UMA) Tema 4: Teoría de Grafos 12 / 178
Nociones básicas en teoría de grafos 4.1 Nociones básicas en teoría de grafos
Representación de grafos: Listas de adyacencia
Ejemplo c
Definición
b d Sea G = (V, E) un grafo (o digrafo), con V = {v1 , . . . , vn }. La lista de
adyacencia de G es una lista de listas construida como sigue:
f
la lista contiene tantas listas como vértices tiene el grafo;
a e el primer elemento de cada lista es un vértice, siendo este primer
X elemento distinto para cada lista;
(v) = 3 + 4 + 2 + 4 + 3 + 4 = 20 = 2 · 10 = 2|E|
si vi es el primer elemento de una lista, el resto de los elementos son
v2V
los elmentos adyacentes a vi .
Agustín Valverde (UMA) Tema 4: Teoría de Grafos 13 / 178 Agustín Valverde (UMA) Tema 4: Teoría de Grafos 15 / 178
4.1 Nociones básicas en teoría de grafos 4.1 Nociones básicas en teoría de grafos
Representación de grafos Representación de grafos: Listas de adyacencia
Ejemplo
Listas de adyacencia
v4 v1 v2 v3 v4 v5 v6 v7
v5
Matrices de adyacencia v3 v2 v1 v1 v3 v3 v1 v1
v7 v3 v3 v2 v5 v4 v5 v3
v6
v6 v4 v6 v7 v5
v2 v7 v5 v7 v6
v1 v7
Agustín Valverde (UMA) Tema 4: Teoría de Grafos 14 / 178 Agustín Valverde (UMA) Tema 4: Teoría de Grafos 16 / 178
4.1 Nociones básicas en teoría de grafos 4.1 Nociones básicas en teoría de grafos
Representación de grafos: Matrices de adyacencia Familias distinguidas de grafos simples
Definición
Se llama matriz de adyacencia de un grafo G = (V, E) con conjunto de
1 Grafo completo Kn .
vértices V = {v1 , . . . , vn }, a la matriz cuadrada MG = (mij ), donde
2 Ciclos Cn .
mij = 1 si vi y vj están conectados y mij = 0 en caso contrario.
0 1
3 Grafo Rueda Wn .
Ejemplo 0 1 0 0 1 1
c B C
4 Grafo estrella Sn .
B 1 0 1 1 0 1 C
B 0 1 0 1 0 0 C 5 Grafos regulares.
b d MG = B
B
C
C
B 0 1 1 0 1 1 C
@ A 6 n-Cubos: Qn .
f 1 0 0 1 0 1
1 1 0 1 1 0 7 Grafos bipartitos.
a e
* Para los grafos simples, la matriz siempre es simétrica, pero no en los 8 Grafos bipartitos completos Km,n .
digrafos. En los multigrafos, la matriz se forma con el número de aristas
que conecta cada par de vértices.
Agustín Valverde (UMA) Tema 4: Teoría de Grafos 17 / 178 Agustín Valverde (UMA) Tema 4: Teoría de Grafos 19 / 178
4.1 Nociones básicas en teoría de grafos 4.1 Nociones básicas en teoría de grafos
Representación de grafos: Listas de adyacencia Grafos definidos a partir de otros
Ejemplo
Definición (Subgrafos)
c Se dice que el grafo H = (VH , EH ) es un subgrafo del grafo G = (VG , EG ) si
VH ✓ VG , EH ✓ EG y cada arista de EH conecta vértices de VH .
b d
El subgrafo se llama propio si, o bien VH 6= VG o bien EH 6= EG .
f Si VH = VG , se dice que el grafo H es un subgrafo generador de G (En
a e inglés, spanning subgraph).
Agustín Valverde (UMA) Tema 4: Teoría de Grafos 18 / 178 Agustín Valverde (UMA) Tema 4: Teoría de Grafos 20 / 178
4.1 Nociones básicas en teoría de grafos 4.2 Conexión en grafos
Grafos definidos a partir de otros Caminos, Circuitos y Ciclos
Definición
Definición (Unión de grafos) Un camino (en inglés, Walk) entre los vértices v0 y vk de un grafo
La unión de dos grafos simples G1 = (V1 , E1 ) y G2 = (V2 , E2 ) es el grafo G = (V, E), es una secuencia finita
simple cuyo conjunto de vértices es V1 [ V2 y cuyo conjunto de arcos es
E1 [ E2 . Se denota G1 [ G2 . v 0 , e1 , v 1 , e2 , · · · , v k 1 , ek , vk ,
Ejemplo c
b c b c
b d
a d a d f
Grafo G = (V, E) Grafo complementario G = (V, E).
a e
Agustín Valverde (UMA) Tema 4: Teoría de Grafos 22 / 178 Agustín Valverde (UMA) Tema 4: Teoría de Grafos 24 / 178
4.2 Conexión en grafos 4.2 Conexión en grafos
Caminos, Circuitos y Ciclos Caminos, Circuitos y Ciclos
ei 6= ej , si i 6= j
b d
Un camino elemental (en inglés, Path) es un camino en el que todos los
vértices son distintos f
vi 6= vj , si i 6= j.
a e
Agustín Valverde (UMA) Tema 4: Teoría de Grafos 25 / 178 Agustín Valverde (UMA) Tema 4: Teoría de Grafos 27 / 178
Definición
Ejemplo: El camino T : a, b, d, c, b, f, e en el siguiente grafo, es simple: Un camino se dice cerrado si empieza y termina en el mismo vértice.
Ejemplo:
b d c. cerrado circuito ciclo
c c c
f
b d b d b d
a e f f f
a e a e a e
a b d c b a; a b f d b c d e a; a b f d e a
Agustín Valverde (UMA) Tema 4: Teoría de Grafos 26 / 178 Agustín Valverde (UMA) Tema 4: Teoría de Grafos 28 / 178
4.2 Conexión en grafos 4.2 Conexión en grafos
Caminos, Circuitos y Ciclos Grafos conexos. Componentes conexas
Agustín Valverde (UMA) Tema 4: Teoría de Grafos 29 / 178 Agustín Valverde (UMA) Tema 4: Teoría de Grafos 31 / 178
Definición
Teorema (Número de caminos entre dos vértices)
Un grafo G = (V, E) se dice conexo si hay un camino entre cada par de
Sea G un grafo con matriz de adyacencia MG . El número de caminos de
vértices distintos del grafo.
longitud k, k 0 entre los vértices vi y vj es el número que ocupa la
Ejemplo: G2 es un grafo conexo, pero G1 no lo es. posición (i, j) de la matriz MkG .
b d f h b d
* G puede ser dirigido o no, multigrafo o pseudografo.
c i j c f
* Podemos utilizar este resultado para decidir si un grafo es conexo a
a e g a e
partir de su matriz de adyacencia.
Grafo G1 = (V1 , E1 ) Grafo G2 = (V2 , E2 )
Agustín Valverde (UMA) Tema 4: Teoría de Grafos 30 / 178 Agustín Valverde (UMA) Tema 4: Teoría de Grafos 32 / 178
4.2 Conexión en grafos 4.2 Conexión en grafos
Grafos conexos. Componentes conexas Grafos conexos. Componentes conexas
Ejemplo: El grafo 0 1
0 1 0 1 0 v1 v2 A veces, eliminar un vértice y todas las aristas incidentes en él produce
B 1 0 1 0 1 C
B C un subgrafo con más componentes conexas que el grafo inicial. A estos
MG = B
B 0 1 0 1 1 C
C v3
@ A vértices se les llama vértices de corte o puntos de articulación.
1 0 1 0 0
0 1 1 0 0 v4 v5 Análogamente, se llama arista de corte o puente a aquella arista cuya
es conexo, ya que al menos hay un camino de longitud a lo sumo 2 que une eliminación produce un grafo con más componentes conexas que el
cada par de vértices. grafo original.
Por otra parte, si calculamos M4G vemos que hay 7 caminos de longitud 4 El menor número de vértices que hay que eliminar en un grafo G, para
que unen v2 con v4 . que se desconecte o llegue a ser trivial (esto es, un vértice aislado) se
0 1 0 1 denota (G) y se denomina índice de vértice-conexión o
2 0 2 0 1 9 3 11 1 6
B 0 3 1 2 1 C B 3 15 7 11 8 C conectividad.
B C B C
M2G = B
B 2 1 3 0 1 C;
C M4G = B
B 11 7 15 3 8 C
C
@ 0 A @ 1 Un grafo G se llama n -conexo si (G) n.
2 0 2 1 11 3 9 6 A
1 1 1 1 2 6 8 8 6 8
Agustín Valverde (UMA) Tema 4: Teoría de Grafos 33 / 178 Agustín Valverde (UMA) Tema 4: Teoría de Grafos 35 / 178
Ejemplo
Ejemplo Una manera de conectar entre sí 6 nodos economizando el v2 v4 v6 v8 v2 v4 v6 v8
cableado entre ellos sería mediante un ciclo de longitud 5, o bien mediante
una estrella de 5 puntas. v1 v3 v5 v7 v1 v3 v5 v7
u2 u1 v1 v2 v4 v6 v8 v2 v4 v6 v8
v2 v5
u3 u6 v1 v3 v5 v7 v1 v3 v5 v7
v6
Vértices de corte: v1 , v3 , v5
u4 u5 v3 v4 v2 v4 v6 v8 v2 v4 v6 v8
C6 S5
v1 v3 v5 v7 v1 v3 v5 v7
G1 G2
v1 v2 v1 v2
v5
Caminos y circuitos eulerianos
v4 v3 v3 v4 v5
Circuito euleriano en G1 :
v1 v5 v3 v4 v5 v2 v1
Caminos y ciclos hamiltonianos
Camino euleriano en G2 :
v1 v3 v4 v5 v2 v1 v4 v2
Agustín Valverde (UMA) Tema 4: Teoría de Grafos 38 / 178 Agustín Valverde (UMA) Tema 4: Teoría de Grafos 40 / 178
4.3 Grafos eulerianos 4.3 Grafos eulerianos
Ejemplo:
1 Primera iteración:
Ejemplo: El siguiente grafo no contiene ni caminos ni circuitos de Euler a b e f c a
a
b d f 2 Segunda iteración:
a b e f c a
b c z }| {
a c e g e d f g e
d
Resultado:
e f a b e d f g e f c a
Teorema
Un grafo conexo tiene un circuito de Euler si y solo si todos los vértices son 3 Tercera iteración:
de grado par. g a b e d f g e f c a
z }| {
d b c d
Resultado:
a b e d b c d f g e f c a
Agustín Valverde (UMA) Tema 4: Teoría de Grafos 41 / 178 Agustín Valverde (UMA) Tema 4: Teoría de Grafos 43 / 178
Teorema
Algoritmo de Fleury (Descripción informal)
Un grafo conexo tiene un camino de Euler entre los vértices u y v si y
1 Se elige un vértice arbitrario y se construye un circuito. solo si todos los vértices tienen grado par excepto u y v .
2 Si ese circuito contiene todos los arcos, FIN.
Ejemplo Estudia si es posible dibujar el siguiente grafo sin levantar el lápiz
3 En caso contrario, se considera un vértice común al circuito construido del papel y no repetir arco.
y a la parte del grafo que queda sin recorrer. (Este vértice está a
asegurado por ser G conexo.)
4 Empezando por ese vértice, se construye un circuito. b c
Agustín Valverde (UMA) Tema 4: Teoría de Grafos 42 / 178 Agustín Valverde (UMA) Tema 4: Teoría de Grafos 44 / 178
4.3 Grafos hamiltonianos 4.3 Grafos hamiltonianos
Caminos y ciclos hamiltonianos Caminos y ciclos hamiltonianos
Ejemplo G3
Definición
Un camino hamiltoniano entre dos vértices distinos u y v , es un camino
b d f
que pasa por cada vértice del grafo exactamente una vez, es decir, un
camino elemental que recorre todos los vértices.
a c e g
Un ciclo hamiltoniano es un ciclo que recorre todas los vértices del grafo
exactamente una vez.
En G3 no existe ni ciclo ni camino hamiltoniano.
Agustín Valverde (UMA) Tema 4: Teoría de Grafos 45 / 178 Agustín Valverde (UMA) Tema 4: Teoría de Grafos 47 / 178
Ejemplo
Teorema (Dirac)
G1 G1 Sea G = (V, E) un grafo simple con n vértices, n 3. Si todos los
n
c 1 2 vértices de G tienen grado mayor o igual a , entonces G contiene un
b 2
ciclo hamiltoniano.
a d 4 3
Teorema (Ore)
e
Sea G un grafo simple con n vértices, n 3. Si para cada par de
a c b d e a 1 2 4 3
vértices no adyacentes u y v de G se verifica (u) + (v) n,
entonces G contiene un ciclo hamiltoniano.
Agustín Valverde (UMA) Tema 4: Teoría de Grafos 46 / 178 Agustín Valverde (UMA) Tema 4: Teoría de Grafos 48 / 178
Tema 4: Teoría de Grafos 4.4 Isomorfismos de grafos
4.4 Isomorfismo de grafos
Definición
Se dice que dos grafos simples G1 = (V1 , E1 ) y G2 = (V2 , E2 ) son
isomorfos si existe una función biyectiva : V1 ! V2 tal que
La relación de isomorfía entre grafos es una relación de equivalencia.
8u, v 2 V1 , {u, v} 2 E1 () { (u), (v)} 2 E2
Cada clase de equivalencia definida por esta relación es
Esta función se llama isomorfismo de grafos. un conjunto de grafos isomorfos al que llamaremos grafo
no etiquetado.
Es decir, dos grafos son isomorfos si entre sus vértices existe una
función biyectiva que conserva las adyacencias en los dos sentidos.
Matricialmente, esto significa que existe una reordenación de los
vértices de G1 y G2 de manera que las matrices de adyacencia,
según estas reordenaciones, son exactamente iguales.
Agustín Valverde (UMA) Tema 4: Teoría de Grafos 49 / 178 Agustín Valverde (UMA) Tema 4: Teoría de Grafos 51 / 178
u4 u5 v1 v5
Y el isomorfismo está dado por la siguiente biyección:
8
: V1 ! V2 >
> {a, b} 2 E1 () ({a, b}) = {u, v} 2 E2
>
> u1 u3 u2 v4 v2 v3
>
>
a 7! u < {a, c} 2 E1 () ({a, c}) = {u, x} 2 E2
>
Grafo G1 Grafo G2 Grafo G3
b 7! v {a, d} 2 E1 () ({a, d}) = {u, y} 2 E2
>
>
c 7! x >
> {b, c} 2 E1 () ({b, c}) = {v, x} 2 E2
>
>
>
: {c, d} 2 E () ({c, d}) = {x, y} 2 E
d 7! y 1 2
Agustín Valverde (UMA) Tema 4: Teoría de Grafos 50 / 178 Agustín Valverde (UMA) Tema 4: Teoría de Grafos 52 / 178
4.4 Isomorfismos de grafos Isomorfismos de grafos (Caminos e Isomorfismos)
Verificar que dos grafos son isomorfos o no lo son puede ser un Ejemplo: Estudia si son isomorfos o no los grafos siguientes
problema difícil.
Grafo G1 Grafo G2
Para la resolución de este problema se suelen buscar datos
necesariamente comunes a todos los grafos de una clase de 1 2 3 4 5 6 7 8 9 1 2 3 4 5 6 7 8 9
(equivalencia) isomorfía. 2 1 2 3 4 1 5 6 3 2 1 4 3 2 1 3 9 8
6 3 4 5 7 7 6 6 5 7 7 6 2 4
A estos datos se les llama invariantes de un grafo.
9 8 6 5
Son invariantes de un grafo
1 su número de vértices: |V|,
Ambos grafos tienen la misma lista de grados (3, 3, 2, 2, 2, 2, 2, 1, 1)
2 su número de aristas: |E|,
3 la lista de grados de los vértices, (v), para los v 2 V. Pero el grafo G1 es conexo y el grafo G2 tiene tres componentes
4 ... conexas de vértices respectivos {1, 2, 5, 6}, {3, 4, 7}, {8, 9}.
Agustín Valverde (UMA) Tema 4: Teoría de Grafos 53 / 178 Agustín Valverde (UMA) Tema 4: Teoría de Grafos 55 / 178
Ejercicio Comprueba que son isomorfos los grafos G1 y G2 . Ejemplo: Estudia si son isomorfos los siguientes grafos
a b s t
e f w x
Grafo G1 Grafo G2 h g z y
d c v u
Ejercicio Comprueba que no son isomorfos los grafos H1 y H2 . Grafo G1 Grafo G2
Grafo H1 Grafo H2 Como estos invariantes coinciden, podemos pensar que son isomorfos.
Agustín Valverde (UMA) Tema 4: Teoría de Grafos 54 / 178 Agustín Valverde (UMA) Tema 4: Teoría de Grafos 56 / 178
4.4 Isomorfismos de grafos Isomorfismos de grafos
Agustín Valverde (UMA) Tema 4: Teoría de Grafos 57 / 178 Agustín Valverde (UMA) Tema 4: Teoría de Grafos 59 / 178
Ejemplo:
Estudiar el número de caminos y circuitos nos puede ayudar a
determinar si dos grafos son isomorfos o no. u2 v1
Agustín Valverde (UMA) Tema 4: Teoría de Grafos 58 / 178 Agustín Valverde (UMA) Tema 4: Teoría de Grafos 60 / 178
4.5 Planaridad 4.5 Planaridad
Fórmula de Euler
Demostración:
Grafo K4 Supongamos que K3,3 fuese plano. Usando el teorema anterior, debería
Ejemplo tener 9 6 + 2 = 5 regiones.
110 111 110 111
Por otra parte, en K3,3 cada ciclo debe contener al menos 4 aristas (por ser
bipartito). Luego cada región debe estar acotada por un ciclo de 4 aristas al
100 101 010 011 menos. Así, el número de aristas de todas las regiones debe ser mayor o
igual que 4r.
010 011 000 001
Pero ya que cada arista es común a dos regiones, se contará como máximo
000 001 100 101 dos veces. Por eso, el número total de aristas debe ser menor o igual a 2e.
Grafo Q3 18
4r 2e =) 4r 2 · 9 =) r = 4,5 < 5
4
Agustín Valverde (UMA) Tema 4: Teoría de Grafos 62 / 178 Agustín Valverde (UMA) Tema 4: Teoría de Grafos 64 / 178
Y esto contradice que r = 5. Por lo tanto, el grafo K3,3 no es plano.
4.5 Planaridad 4.5 Planaridad
Fórmula de Euler Grafos Homeomorfos
Corolario (1)
Sea G = (V, E) un grafo plano conexo con |V| = v vértices, |E| = e Definición
aristas, r regiones y v 3 y e > 2. Entonces, 3r 2e y e 3v 6. Se dice que los grafos G1 = (V1 , E1 ) y G2 = (V2 , E2 ) son homeomorfos si se
puede obtener el uno del otro insertando o eliminando vértices de grado 2.
Corolario (2)
Sea G un grafo plano conexo. Entonces G tiene un vértice de grado Ejemplo:
menor o igual a 5.
Corolario (3)
Si un grafo plano conexo tiene e aristas y v vértices, con v 3 y no
contiene ciclos de longitud tres, entonces e 2v 4.
Agustín Valverde (UMA) Tema 4: Teoría de Grafos 65 / 178 Agustín Valverde (UMA) Tema 4: Teoría de Grafos 67 / 178
Agustín Valverde (UMA) Tema 4: Teoría de Grafos 66 / 178 Agustín Valverde (UMA) Tema 4: Teoría de Grafos 68 / 178
4.5 Planaridad 4.5 Planaridad
Teorema de Kuratowski Teorema de Kuratowski
v9 v8 v9 v8 v8
Agustín Valverde (UMA) Tema 4: Teoría de Grafos 69 / 178 Agustín Valverde (UMA) Tema 4: Teoría de Grafos 71 / 178
El número cromático del grafo es el mínimo número de colores necesario (v1 ) (v2 ) . . . (vn 1) (vn )
para su coloración. Se denota (G).
Se asigna el color 1 al primer vértice v1 , es decir, c(v1 ) = 1 .
Para determinar que el número cromático de un grafo es m son necesarios Siguiendo la lista de vértices, se asigna el color 1 a cada vértice que no
dos pasos: sea adyacente a v1 ni a ningún vértice coloreado con 1.
1 Demostrar que el grafo se puede colorear con m colores. Se asigna el color 2 al primer vértice de la lista que no esté coloreado
2 Demostrar que el grafo no se puede colorear usando menos de m aun.
colores. Siguiendo la lista de vértices, se asigna el color 2 a cada vértice que no
esté coloreado aun y que no sea adyacente a ningún vértice coloreado
con 2.
Se repite este proceso hasta que todos los vértices estén coloreados.
Agustín Valverde (UMA) Tema 4: Teoría de Grafos 73 / 178 Agustín Valverde (UMA) Tema 4: Teoría de Grafos 75 / 178
Solución: 3 En primer lugar, empezamos con algunos caso particulares, por ejemplo
3 ¿Hay alguna coloración que use menos colores? La respuesta es NO. 3 Continuamos siguiendo el sentido de las agujas del reloj y le asignamos
3 No puede asignarse el mismo color a dos vértices distintos, ya que dos un segundo color (azul) al siguiente vértice al que llegamos.
vértices cualesquiera de este grafo siempre son adyacentes. 3 Proseguimos en el sentido de las agujas del reloj: el siguiente vértice se
3 Por lo tanto, el número cromático de Kn es n. puede colorear en rojo, el cuarto en azul y el quinto en rojo.
3 Finalmente, el sexto vértice que es adyacente al primero, puede
colorearse en azul. Por tanto, el número cromático del grafo Cn es 2.
Agustín Valverde (UMA) Tema 4: Teoría de Grafos 77 / 178 Agustín Valverde (UMA) Tema 4: Teoría de Grafos 79 / 178
3 En general, se necesitan 2 colores para colorear Cn cuando n es par. 1 Demuestra que un grafo simple es bipartito si y solo si su número
3 Para construir una coloración, simplemente se elige un vértice y se cromático es 2.
colorea en rojo. 2 Diseña un algoritmo que permita determinar si un grafo es bipartito,
3 Se procede recorriendo el grafo en el sentido de las agujas del reloj obteniendo el conjunto de vértices V como la unión de dos conjuntos
(utilizando un representación plana del grafo) coloreando el siguiente disjuntos V1 y V2 . (Sugerencia: Tomando el conjunto de vértices
vértice en azul, el tercero en rojo y así sucesivamente. V = {1, 2, . . . , n}, partir de la situación inicial V1 = {1} y V2 = ?. Ir
añadiendo al conjunto V2 los vértices adyacentes a vértices del
3 El vértice n -ésimo se puede colorear en azul, ya que los dos vértices
conjunto V1 y recíprocamente, comprobando en cada adición si su
adyacentes a él (esto es, el vértice n 1 -ésimo y el primero) están
intersección es vacía.)
coloreados en rojo.
(Se elige el rojo para los vértices impares y el azul para los pares).
Agustín Valverde (UMA) Tema 4: Teoría de Grafos 81 / 178 Agustín Valverde (UMA) Tema 4: Teoría de Grafos 83 / 178
Agustín Valverde (UMA) Tema 4: Teoría de Grafos 82 / 178 Agustín Valverde (UMA) Tema 4: Teoría de Grafos 84 / 178
4.6 Coloración de Grafos 4.6 Coloración de Grafos
Aplicaciones de la coloración de grafos Aplicaciones de la coloración de grafos
Ejercicio
Ejercicio
¿Cuántos canales distintos se necesitan para 6 estaciones localizadas a las
El jefe de una escuela tiene que programar las fechas de los exámenes
distancias que se muestran en la siguiente tabla si dos estaciones no pueden
finales de 7 asignaturas: a1 , a2 , a3 , a4 , a5 , a6 , a7 . Se sabe que los siguientes
usar el mismo canal cuando están a menos de 150 Km una de la otra?
pares de asignaturas tienen alumnos en común:
1 2 3 4 5 6
{a1 , a2 }, {a1 , a3 }, {a1 , a4 }, {a1 , a7 }, {a2 , a3 }, {a2 , a4 }, {a2 , a5 }, {a2 , a7 }, 1 85 175 200 50 100
2 85 125 175 100 160
{a3 , a4 }, {a3 , a6 }, {a3 , a7 }, {a4 , a5 }, {a4 , a6 }, {a5 , a6 }, {a5 , a7 }, {a6 , a7 } 3 175 125 100 200 250
4 200 175 100 210 220
¿Cuántos días son necesarios para realizar todos los exámenes de modo que 5 50 100 200 210 100
ningún estudiante tenga dos exámenes el mismo día? 6 100 160 250 220 100
Agustín Valverde (UMA) Tema 4: Teoría de Grafos 85 / 178 Agustín Valverde (UMA) Tema 4: Teoría de Grafos 87 / 178
Agustín Valverde (UMA) Tema 4: Teoría de Grafos 89 / 178 Agustín Valverde (UMA) Tema 4: Teoría de Grafos 91 / 178
Ca
modelar procedimientos que se realizan usando una secuencia de
decisiones. Por tanto, son útiles en los algoritmos de clasificación.
Ma Gr Co Se Ca Hu Ja Al
4 4 4 4 3 3 2 1
Agustín Valverde (UMA) Tema 4: Teoría de Grafos 90 / 178 Agustín Valverde (UMA) Tema 4: Teoría de Grafos 92 / 178
4.7 Árboles 4.7 Árboles
Conceptos fundamentales Conceptos fundamentales
Definición
Un árbol es un grafo conexo sin ciclos. Definición
Se llama bosque a un grafo acíclico cuyas componentes conexas son árboles.
Ejemplo Indica qué grafos de la siguiente figura son árboles.
Ejemplo El grafo G4 es un bosque.
G1 G2 G3 G4
Agustín Valverde (UMA) Tema 4: Teoría de Grafos 93 / 178 Agustín Valverde (UMA) Tema 4: Teoría de Grafos 95 / 178
Teorema
Sea G = (V, E) un grafo simple. Son equivalentes:
1 G es un árbol.
2 G es conexo y |E| = |V| 1.
3 G no tiene ciclos y |E| = |V| 1.
Los grafos G1 y G2 son árboles, pero G3 y G4 no lo son. 4 En G hay exactamente un camino entre cada par de vértices.
El grafo G3 tiene un ciclo y el grafo G4 no es conexo. 5 G es conexo, pero si eliminamos una arista cualquiera, el grafo
resultante no es conexo.
Agustín Valverde (UMA) Tema 4: Teoría de Grafos 94 / 178 Agustín Valverde (UMA) Tema 4: Teoría de Grafos 96 / 178
4.7 Árboles 4.7 Árboles
Árboles generadores Árboles generadores
Se
Definición
Ma
Un subgrafo generador de un grafo simple G = (V, E) es cualquier
subgrafo de G que incluye todos los vértices de G. Z Z
B B
M M
Definición V V
PM PM
Un árbol generador (spanning tree) de un grafo simple G = (V, E) es un
Se Se
subgrafo generador de G que es un árbol.
Ma Ma
Agustín Valverde (UMA) Tema 4: Teoría de Grafos 97 / 178 Agustín Valverde (UMA) Tema 4: Teoría de Grafos 99 / 178
Agustín Valverde (UMA) Tema 4: Teoría de Grafos 101 / 178 Agustín Valverde (UMA) Tema 4: Teoría de Grafos 103 / 178
Definición
Definición
Un árbol con raíz es un árbol en el que uno de sus vértices se ha designado
Sea T un árbol con raíz y sea v un vértice distinto a la raíz.
como la raíz y todas las aristas están orientadas de modo que se alejan de
la raíz. El padre de v es el único vértice u tal que hay una arista dirigida
desde u hasta v .
Ejemplo Del árbol T podemos obtener distintos árboles con raíz:
a Cuando u es el padre de v , se dice que v es el hijo de u .
a c
e Los vértices con el mismo padre se llaman hermanos.
b
Los antecesores de un vértice v son todos los vértices que aparecen
b e
d c d b en el camino desde la raíz hasta v .
f
f e f a c d Los descendientes de un vértice v son aquellos vértices para los que
v es un antecesor.
Árbol T Árbol con raíz a Árbol con raíz e
Agustín Valverde (UMA) Tema 4: Teoría de Grafos 102 / 178 Agustín Valverde (UMA) Tema 4: Teoría de Grafos 104 / 178
4.7 Árboles 4.7 Árboles
Árboles con raíz Árboles con raíz
Definición Los árboles con raíz tales que todos sus vértices internos tienen el
Sea T un árbol con raíz y sea v un vértice distinto a la raíz. mismo número de hijos se utilizan en múltiples aplicaciones.
Una hoja es un vértice que no tiene hijos. Estos árboles se usan para estudiar problemas relativos a la búsqueda,
Los vértices internos son los vértices que tienen hijos. la ordenación y la codificación.
Agustín Valverde (UMA) Tema 4: Teoría de Grafos 105 / 178 Agustín Valverde (UMA) Tema 4: Teoría de Grafos 107 / 178
Ejemplos
a Ejemplos
a r
b c d d
b c d u v w
e f g h f g h
e f g h i j x y z
i j k l m n l m n
Árbol ternario completo Árbol ternario (no completo)
Agustín Valverde (UMA) Tema 4: Teoría de Grafos 106 / 178 Agustín Valverde (UMA) Tema 4: Teoría de Grafos 108 / 178
4.7 Árboles 4.7 Árboles
Árboles con raíz Árboles con raíz
Teorema
Un árbol de n vértices tiene n 1 aristas. Ejercicio 2
Un aula tiene 25 ordenadores que deben conectarse a un enchufe de pared
Teorema (Propiedades de los árboles con raíz) con cuatro salidas. Se hacen las conexiones mediante cables de extensión
Un árbol m -ario completo con i vértices internos tiene n = i · m + 1 con cuatro salidas cada uno.
vértices. ¿Cuál es el número mínimo de cables que se necesitan para poder utilizar
Sea T un árbol m -ario completo y sean n el número de vértices, todos los ordenadores?
i el número de vértices internos y l el número de hojas del árbol.
Agustín Valverde (UMA) Tema 4: Teoría de Grafos 109 / 178 Agustín Valverde (UMA) Tema 4: Teoría de Grafos 111 / 178
Ejercicio 3
Ejercicio 1 En una compañía donde trabajan 125 ejecutivos se instala un nuevo sistema
de comunicación telefónica. Lo inaugura la presidenta, quien llama a sus
1 Un árbol ternario completo tiene 34 vértices internos. ¿Cuántas aristas
cuatro vicepresidentes. A continuación, cada vicepresidente llama a otros
tiene? ¿Cuántas hojas?
cuatro ejecutivos; éstos, a su vez, a otros cuatro y así sucesivamente.
2 ¿Cuántos vértices internos tiene un árbol 5-ario completo con 817 hojas?
1 ¿Cuántas llamadas son necesarias para comunicar con los 125 ejecutivos?
2 ¿Cuántos ejecutivos hacen llamadas?
Agustín Valverde (UMA) Tema 4: Teoría de Grafos 110 / 178 Agustín Valverde (UMA) Tema 4: Teoría de Grafos 112 / 178
4.7 Árboles 4.7 Árboles
Árboles con raíz Árboles con raíz ordenados
Definición
Definición Un árbol con raíz ordenado es un árbol con raíz en el que los hijos de cada
El nivel de un vértice v en un árbol con raíz es la longitud del único vértice interno están ordenados.
camino desde la raíz hasta dicho vértice. (El nivel de la raíz es cero)
3 Los árboles ordenados con raíz se dibujan de modo que los hijos de cada
La altura de un árbol con raíz es el máximo de los niveles de sus
vértice interno se colocan ordenados de izquierda a derecha.
vértices.
Un árbol con raíz m -ario de altura h está equilibrado o balanceado En un árbol binario completo ordenado , el primer hijo de cada vértice
si todas sus hojas están en los niveles h o h 1. interno se llama hijo izquierdo y el segundo se llama hijo derecho.
El árbol con raíz en el hijo izquierdo se llama subárbol izquierdo y el árbol
con raíz en el hijo derecho se llama subárbol derecho.
Agustín Valverde (UMA) Tema 4: Teoría de Grafos 113 / 178 Agustín Valverde (UMA) Tema 4: Teoría de Grafos 115 / 178
Ejemplos
Teorema
a a
Un árbol m -ario de altura h tiene, a lo sumo, mh hojas.
b c b c
Corolario
Si un árbol m -ario de altura h tiene l hojas, entonces h dlogm l e. d e e d
Si el árbol m -ario es completo y equilibrado, entonces h = dlogm l e.
f g f g
(Se recuerda que dxe es el menor entero mayor o igual que x ). Árbol T1 Árbol T2
¿Cuál es el número máximo de vértices internos que puede tener un árbol Sin embargo, como árboles ordenados no son iguales, ya que en T1 el
Agustín Valverde (UMA) Tema 4: Teoría de Grafos 117 / 178 Agustín Valverde (UMA) Tema 4: Teoría de Grafos 119 / 178
⇣ ⌘
Ejemplo (x + y) ⇤ z u⇤v
⇣ ⌘
Ejemplo La expresión algebraica (x + y) ⇤ z u⇤v se puede
representar mediante un árbol ordenado
⇤ ⇤
⇤ ⇤ + z u v
+ z u v x y
Agustín Valverde (UMA) Tema 4: Teoría de Grafos 118 / 178 Agustín Valverde (UMA) Tema 4: Teoría de Grafos 120 / 178
4.7 Árboles 4.7 Árboles
Árboles con raíz ordenados Recorridos en Árboles: Introducción
Agustín Valverde (UMA) Tema 4: Teoría de Grafos 121 / 178 Agustín Valverde (UMA) Tema 4: Teoría de Grafos 123 / 178
Agustín Valverde (UMA) Tema 4: Teoría de Grafos 122 / 178 Agustín Valverde (UMA) Tema 4: Teoría de Grafos 124 / 178
4.7 Árboles 4.7 Árboles
Recorridos en Árboles: Orden Previo Recorridos en Árboles: Orden Simétrico
Agustín Valverde (UMA) Tema 4: Teoría de Grafos 125 / 178 Agustín Valverde (UMA) Tema 4: Teoría de Grafos 127 / 178
Ejemplo
r
r v u w Tx Ty Tz s p q
r v u w x y z s p q
Agustín Valverde (UMA) Tema 4: Teoría de Grafos 126 / 178 Agustín Valverde (UMA) Tema 4: Teoría de Grafos 128 / 178
4.7 Árboles 4.7 Árboles
Recorridos en Árboles: Orden Simétrico Recorridos en Árboles: Orden Posterior
Ejemplo
r
v s Postorder
u w p q Paso 1: Recorrer T1 en orden posterior.
Paso 2: Recorrer T2 en orden posterior.
x y z ..
.
Tv r Ts Paso k: Recorrer Tk en orden posterior.
u v Tx w Ty Tz r Tp s Tq
u v x w y z r p s q
Agustín Valverde (UMA) Tema 4: Teoría de Grafos 129 / 178 Agustín Valverde (UMA) Tema 4: Teoría de Grafos 131 / 178
Ejemplo
r
3 Postorder Sea T un árbol con raíz r ordenado.
v s
Si T solo consiste en la raíz, entonces r es el recorrido en orden
u w p q
posterior de T.
En otro caso, supongamos que v1 , v2 , ..., vk son los hijos de r de x y z
izquierda a derecha en T y T1 , T2 , ..., Tk los subárboles
Tv Ts r
correspondientes.
El recorrido en orden posterior empieza por recorrer T1 en orden Tu Tw v Ts r
Agustín Valverde (UMA) Tema 4: Teoría de Grafos 130 / 178 Agustín Valverde (UMA) Tema 4: Teoría de Grafos 132 / 178
4.7 Árboles 4.7 Árboles
Recorridos en Árboles. Notación polaca Recorridos en Árboles. Notación polaca
Agustín Valverde (UMA) Tema 4: Teoría de Grafos 137 / 178 Agustín Valverde (UMA) Tema 4: Teoría de Grafos 139 / 178
Ejercicio
1 Define recorrido en orden previo y recorrido en orden posterior.
Ejercicio Se sabe que una expresión algebraica se representa en notación
2 Dada la expresión sufija como
AB + CD ⇤ EF/ A⇤
(((p1 _ p2 ) ! q) () ((p1 ! q) ^ (p2 ! q)))
1 Traza un árbol binario que represente a dicha expresión algebraica.
Agustín Valverde (UMA) Tema 4: Teoría de Grafos 138 / 178 Agustín Valverde (UMA) Tema 4: Teoría de Grafos 140 / 178
4.7 Árboles 4.7 Árboles
Árboles de Búsqueda Árboles de Búsqueda: Búsqueda en anchura (B.E.A.)
Algoritmo B. E. A.
Se elige un vértice arbitrario como raíz y se designa v0 .
A continuación se añaden todas las aristas incidentes con ese vértice.
Para determinar una propiedad de un grafo, a menudo hay que explorar
Los nuevos vértices añadidos en esta fase forman los vértices del nivel 1
cada uno de los vértices y aristas en algún orden razonable.
del árbol generador. Los ordenamos en cualquier orden.
Son importantes dos recorridos: Para cada vértice del nivel 1, visitados en orden, se añaden todas las
aristas incidentes con él (siempre que no formen ciclo).
1 Búsqueda en anchura (B.E.A.)
Los nuevos vértices añadidos a esta fase forman los vértices del nivel 2
2 Búsqueda en profundidad (B. E. P.) del árbol.
Seguimos el mismo procedimiento hasta que se hayan añadido al árbol
todos los vértices del grafo G.
Este proceso termina, ya que el conjunto de vértices del grafo G es
finito.
Agustín Valverde (UMA) Tema 4: Teoría de Grafos 141 / 178 Agustín Valverde (UMA) Tema 4: Teoría de Grafos 143 / 178
Agustín Valverde (UMA) Tema 4: Teoría de Grafos 142 / 178 Agustín Valverde (UMA) Tema 4: Teoría de Grafos 144 / 178
Algoritmo de Búsqueda en Profundidad (B.E.P.) 4.7 Árboles
Árboles de Búsqueda
Si esto no se puede hacer, retrocedemos al vértice anterior en el recorrido comprobar si un grafo es acíclico.
hasta la raíz y lo intentamos de nuevo.
Muchos problemas se pueden representar usando grafos en los que se asigna Gráficamente, etiquetando cada arista con su peso w(e),
un número (peso) a cada una de sus aristas. Matricialmente, mediante la matriz de pesos W(G) = (wi,j ), donde
previamente se ha listado ordenadamente el conjunto de vértices. Cada
Ejemplo Para una línea aérea construimos el modelo básico representando elemento wi,j es
las ciudades mediante vértices y los vuelos mediante aristas. el peso de la arista {vi , vj } o el arco (vi , vj ) ; o bien
un símbolo para indicar que vi no es adyacente a vj .
Los problemas relacionados con distancias entre ciudades se pueden
representar asignándoles a las aristas las distancias entre ciudades. Ejemplo
0 1
Los problemas relacionados con tiempos de vuelo se pueden b 5 d 0 4 2
B C
B 4 0 1 5 C
representar asignándoles a las aristas los tiempos de vuelo 4 6 B C
B 2 1 0 8 10 C
B C
corespondientes. a 1 2 z W(G) = B C
B 5 8 0 2 6 C
8 B C
Los problemas relacionados con tarifas de vuelo se pueden representar 2 3 B
@ 10 2 0
C
3 A
asignándoles a las aristas los precios de los billetes. 6 3 0
c 10 e
Agustín Valverde (UMA) Tema 4: Teoría de Grafos 149 / 178 Agustín Valverde (UMA) Tema 4: Teoría de Grafos 151 / 178
Definición
En un grafo ponderado se llama longitud de un camino a la suma de los
pesos de sus aristas.
Definición
Sea G = (V, E) un grafo (o digrafo) simple. Ejemplo La longitud del camino a b d c e z es 30
Se llama peso a una función
b 5 d
w : E ! R +
4 6
e 7! w(e) a 1 2 z
8
2 3
A la terna G = (V, E, w) se le llama grafo ponderado.
c 10 e
En un grafo ponderado nos planteamos los siguientes problemas:
1 hallar un árbol generador de peso mínimo.
2 encontrar un camino de longitud mínima entre dos vértices.
Agustín Valverde (UMA) Tema 4: Teoría de Grafos 150 / 178 Agustín Valverde (UMA) Tema 4: Teoría de Grafos 152 / 178
4.8 Grafos ponderados 4.8 Grafos ponderados
Árboles generadores minimales Árboles generadores minimales : Algoritmo de Prim
Ejemplo
Definición a
Un árbol generador minimal de un grafo conexo ponderado es un árbol 7
generador tal que la suma de los pesos de sus aristas es mínima. 8
5 b c
Para hallar árboles generadores minimales usaremos: 7
9 5
Algoritmo de Prim 15
d e
6 9
Algoritmo de Kruskal
8
11
f g
Agustín Valverde (UMA) Tema 4: Teoría de Grafos 153 / 178 Agustín Valverde (UMA) Tema 4: Teoría de Grafos 155 / 178
Agustín Valverde (UMA) Tema 4: Teoría de Grafos 154 / 178 Agustín Valverde (UMA) Tema 4: Teoría de Grafos 156 / 178
4.8 Grafos ponderados 4.8 Grafos ponderados
Caminos de longitud mínima Caminos de longitud mínima: ALGORITMO DE DIJKSTRA
¿cuál es la tarifa más barata para viajar entre dos ciudades? También se realiza un proceso de etiquetado en cada iteración.
en una red de ordenadores: En este proceso de etiquetado, a cada vértice v se le pone una
¿cuál es el conjunto de líneas de teléfono menos costosa que se etiqueta que es la longitud de un camino de longitud mínima entre a y
necesita para conectar los ordenadores de Málaga con los de v, que contenga sólo vértices del conjunto de vértices distinguidos.
Barcelona?, El vértice que se añade al conjunto de vértices distinguidos es
¿cuál es el conjunto de líneas de teléfono que da el tiempo de cualquiera que tenga una etiqueta minimal entre aquellos que no están
respuesta más rápido para las comunicaciones entre Málaga y en el conjunto.
Barcelona?
Agustín Valverde (UMA) Tema 4: Teoría de Grafos 157 / 178 Agustín Valverde (UMA) Tema 4: Teoría de Grafos 159 / 178
Agustín Valverde (UMA) Tema 4: Teoría de Grafos 158 / 178 Agustín Valverde (UMA) Tema 4: Teoría de Grafos 160 / 178
4.8 Grafos ponderados 4.8 Grafos ponderados
Caminos de longitud mínima: ALGORITMO DE DIJKSTRA Caminos de longitud mínima: ALGORITMO DE DIJKSTRA
Agustín Valverde (UMA) Tema 4: Teoría de Grafos 161 / 178 Agustín Valverde (UMA) Tema 4: Teoría de Grafos 163 / 178
La actualización se puede realizar eficientemente teniendo en cuenta Solución Ejemplo 1: Al aplicar el algoritmo, usamos una tabla para escribir
que el camino más corto entre a y v que solo contiene vértices de las etiquetas de cada vértice y los conjuntos de vértices distinguidos.
Sk es: Los subíndices de las etiquetas indican el penúltimo vértice en el camino de
3 el camino más corto entre a y u en la etapa k 1 añadiéndole longitud mínima.
la arista {u, v} ; o bien
3 el camino más corto entre a y v que contiene sólo elementos de Vértices a b c d e z Caminos
Sk (es decir, u no está incluido). S0 = ? 0 1 1 1 1 1 a
1
S1 = {a} 2 a
3a 1 1 1 ab, ac
lk (v) = min{lk 1 (v), lk 1 (u) + w(u, v)} S2 = S1 [ {b} 3 7b 4b 1 abd, abe
a
la longitud del camino más corto entre a y z. El camino buscado es: a b e d zz, que tiene longitud 7 .
Agustín Valverde (UMA) Tema 4: Teoría de Grafos 162 / 178 Agustín Valverde (UMA) Tema 4: Teoría de Grafos 164 / 178
4.8 Grafos ponderados 4.8 Grafos ponderados
Caminos de longitud mínima: ALGORITMO DE DIJKSTRA Caminos de longitud mínima: ALGORITMO DE DIJKSTRA
Solución Ejemplo 2:
Solución Ejemplo 1:
Vértices a b c d e z Caminos
b 5 d S0 = ? 0 1 1 1 1 1 a
2 2
S1 = {a} 4a 2 a
1 1 1 ab, ac
a 1 z
2 S2 = S1 [ {c} 3 10 c 12 c 1 acb, acd, ace
c
3 4 S3 = S2 [ {b} 8 12 c 1 acbd
c 5 e b
S4 = S3 [ {d} 10 d
14 d acbde, acbdz
S5 = S4 [ {e} 13 e
acbdez
Agustín Valverde (UMA) Tema 4: Teoría de Grafos 165 / 178 Agustín Valverde (UMA) Tema 4: Teoría de Grafos 167 / 178
5
b d
5 4 6
b d
4 6 a 1 2 z
8
a 1 2 z 2 3
8
c e
2 3 10
c e
10
Agustín Valverde (UMA) Tema 4: Teoría de Grafos 166 / 178 Agustín Valverde (UMA) Tema 4: Teoría de Grafos 168 / 178
4.8 Grafos ponderados 4.8 Grafos ponderados
Caminos de longitud mínima: ALGORITMO DE DIJKSTRA Caminos de longitud mínima: ALGORITMO DE DIJKSTRA
6 g 6 g
b b
16 4 7 16 4 7
2 8 2 8
10 12 16 a 10 c 12 f 16 z
a c f z
10 10
4 3 4 3
5 5 5 5
d e d e
15 15
Agustín Valverde (UMA) Tema 4: Teoría de Grafos 169 / 178 Agustín Valverde (UMA) Tema 4: Teoría de Grafos 171 / 178
Agustín Valverde (UMA) Tema 4: Teoría de Grafos 170 / 178 Agustín Valverde (UMA) Tema 4: Teoría de Grafos 172 / 178
4.8 Grafos ponderados 4.8 Grafos ponderados
Caminos de longitud mínima: ALGORITMO DE DIJKSTRA Caminos de longitud mínima: ALGORITMO DE DIJKSTRA
Solución Ejemplo 4: Ejercicio En la tabla siguiente se indican las conexiones, (en coste por unidades de
longitud de cable), de los ordenadores A, B, C, D, E, F, G, H, I, J de los empleados de
10
a f una empresa, conectados entre sí en una red.
3
4 13 B C D E F G H I J
12 d 3 A 22 15 14 8
8 5 B 10 12 9 11
C 18
v b e w D 11
15 2 16 E 13 7
2 G 16
9 8 h En la red se producen fallos y se han contratado los servicios de un técnico para
6 4
6 localizarlos. Como el coste de reparación es demasiado elevado, se decide reparar lo
c g indispensable para que los ordenadores A y H queden conectados por tramos
14
renovados. ¿Cuáles serían los tramos a reparar?
Agustín Valverde (UMA) Tema 4: Teoría de Grafos 174 / 178 Agustín Valverde (UMA) Tema 4: Teoría de Grafos 176 / 178
5
b d
2 2
a 2 1 z
3
5 4
c e
Vértices a b c d e z
S0 = ? 0 1 1 1 1 1
S1 = {a} 2(a) 3(a) 1 1 1
S2 = S1 [ {b} 3(a) 7(b) 4(b) 1
S3 = S2 [ {c} 7(b) 4(b) 1
S4 = S3 [ {e} 5(e) 8(e)
S5 = S4 [ {d} 7(d)
6 g
b
16 4 7
2 8
a 10 c 12 f 16 z
10
4 3
5 5
d e
15
Vértices a b c d e f g z
S1 = {a} 16(a) 10(a) 5(a) 1 1 1 1
S2 = S1 [ {d} 16(a) 9(d) 20(d) 1 1 1
S3 = S2 [ {c} 11(c) 19(c) 21(c) 1 1
S4 = S3 [ {b} 19(c) 15(b) 17(b) 1
S5 = S4 [ {f} 18(f) 17(b) 31(f)
S6 = S5 [ {g} 18(f) 24(g)
S7 = S6 [ {e} 23(e)