You are on page 1of 33

Captulo 5

Teora de Grafos.
5.1 Introduccion.
Los grafos se utilizan para modelar situaciones en las que se relacionan entre s pares de objetos
de una determinada coleccion. Gracamente, el modelo consiste en puntos que representan los
objetos y lneas que unen dichos puntos.
Ejemplo 1.- En la ciudad de Konigsberg, existen 7
puentes que unen las riberas y dos islas formadas por
el ro Pregel, de la forma que indica el dibujo. Hay
alguna forma de recorrer los siete puentes y volver al
punto de partida, sin cruzar dos veces por el mismo
puente?
_
`

_
`

,
z
,
y
, x
, w

El grafo que aparece sobre el dibujo modela esa situacion: cuatro puntos, que representan
las partes de tierra rme y las lneas que los unen, representando los puentes. El problema se
reduce a saber si pueden recorrerse todas las lneas sin repetir ninguna y acabar en el mismo
punto.
Ejemplo 2.- Consideremos en A = a, b, c, d la
relacion binaria

dada por el conjunto de pares

= (a, c), (a, d), (b, a), (b, b), (c, a), (c, b), (d, b).
Podemos modelar gracamente la relacion binaria
mediante el grafo de la derecha; donde los puntos
representan los elementos de A y las lneas dirigidas
representan los pares de la relacion.


a
b
c
d
_
'

'
`
_

.
.
.
.
.
.
.
.
.
.
..
Lo ejemplos anteriores, y otros muchos que podran ponerse, admiten un modelo com un: un
graco con puntos y lneas (dirigidas o no) que los unen, donde lo que importa es que puntos
estan conectados (y en que sentido cuando las lneas son dirigidas) y cuantas conexiones hay
entre ellos.
En otras palabras, un grafo G es un par ordenado G = (V, A) donde V es un conjunto no
vaco que describe los objetos de la coleccion y A el conjunto que describe como se relacionan
cada par de elementos de V .
A los elementos de V = x
1
, x
2
, x
3
, . . . se les llama vertices. Si el grafo no indica direc-
ciones, a los elementos de A se les llama aristas, que se denotan por pares a = x
i
, x
j
para
indicar que esa arista a conecta los vertices x
i
y x
j
entre s. Cuando el grafo s indica direc-
ciones, a los elementos de A se les llama arcos, que se denotan por pares ordenados a = (x
i
, x
j
)
para indicar que ese arco a conecta el vertice x
i
con el vertice x
j
. Cuando una arista o un arco
conecta un vertice consigo mismo, le llamaremos lazo o lazo dirigido, seg un el caso.
100
5.1.1 Tipos de grafos.
Es claro de lo anterior que podemos considerar dos tipos de grafos: los grafos dirigidos y los
grafos no dirigidos.
Ahora bien, como la arista de los grafos no dirigidos indica que los vertices extremos pueden
conectarse en las dos direcciones, cada arista equivale a dos arcos (con direcciones opuestas)
entre los extremos de la arista. En consecuencia, todo grafo no dirigido puede convertirse o ser
considerado como un grafo dirigido:
grafos no dirigidos grafos dirigidos.
Es evidente entonces que todos los resultados validos para grafos dirigidos lo son tambien para
los grafos sin dirigir, sin embargo, dado que los problemas modelables con grafos no dirigidos
abarcan un amplio espectro y que esquematicamente son mas sencillos que vistos como grafos
dirigidos, no renunciamos a estudiar de forma particular este tipo de grafos.
Antes de entrar en las deniciones y resultados precisos, es interesante considerar otra clasi-
cacion de los grafos atendiendo solo al hecho de si dos vertices estan o no conectados, sin que
sea relevante si lo estan por mas de una arista o arco. De un grafo que tenga lazos o tenga varias
aristas o arcos en la misma direccion que conectan un mismo par de vertices, diremos que es
un multigrafo, dirigido o no dirigido seg un el caso y, reservaremos la expresion grafo (o grafo
simple) para aquellos grafos sin lazos y cuyos pares de vertices no estan conectados por mas de
una arista, en el caso de los no dirigidos, o no estan conectados por mas de un arco en la misma
direccion, en el caso de los dirigidos.
Atendiendo a todo lo anterior, tenemos la siguiente clasicacion:
multigrafos no dirigidos multigrafos dirigidos

grafos no dirigidos grafos dirigidos.
En este curso solo vamos a considerar grafos nitos, en los que tanto el conjunto de los
vertices como el de las aristas o arcos son conjuntos nitos. A pesar de ello, cuando la validez
de un resultado dependa de la nitud del grafo lo indicaremos expresamente.
5.2 Grafos no dirigidos. Conceptos basicos.
Denicion 3.- Llamaremos grafo (no dirigido simple) a un par G = (V, A) donde V es un
conjunto nito no vaco de vertices y A x, y : x, y V, x ,= y su conjunto de aristas. Si
x, y A diremos que x e y son adyacentes y que la arista x, y une los vertices x e y.
Denicion 4.- Si x es un vertice de un grafo G, llamaremos grado o valencia de x al n umero
de aristas que inciden en x y lo representaremos por gr(x) = [y V : x, y A[ .
Observaciones 5.- 1.- Si G = (V, A) es un grafo y [V [ = n y [A[ = m, el n umero de aristas
verica que 0 m
_
n
2
_
= [x, y : x, y V, x ,= y[ .
2.- Dados n vertices, pueden formarse
_
_
n
2
_
m
_
grafos distintos con exactamente m aristas.
Por tanto, el n umero de grafos con n vertices que pueden formarse es
(
n
2
)

m=0
_
_
n
2
_
m
_
= 2
(
n
2
)
.
En la gura 5.1 siguiente pueden verse los 15 grafos de 4 vertices y 2 aristas. Si llamamos
a los vertices V = x, y, z, t, tenemos que para el grafo G
1
= (V, A
1
) el conjunto de
101
aristas es A
1
=
_
x, y, x, t
_
, para el grafo G
2
= (V, A
2
) el conjunto de aristas es
A
2
=
_
x, y, x, z
_
, etc.
x y
z t
x y
z t
x y
z t
x y
z t
x y
z t
, ,
, ,
, ,
, ,
, ,
, ,
, ,
, ,
, ,
, ,
, ,
, ,
, ,
, ,
, ,
, ,
, ,
, ,
, ,
, ,
, ,
, ,
, ,
, ,
, ,
, ,
, ,
, ,
, ,
, ,
G
1
G
2
G
3
G
4
G
5
G
6
G
7
G
8
G
9
G
10
G
11
G
12
G
13
G
14
G
15
`
`
`
Z
Z
Z
Z
Z
Z
`
`
`
`
`
`
`
`
`
`
`
`
Z
Z
Z
Z
Z
Z
Z
Z
Z
Fig. 5.1. Todos los grafos simples de 4 vertices y 2 aristas.
3.- Si G = (V, A) y [V [ = n, en cada vertice se cumple que 0 gr(x) n 1. Si gr(x) = 0
diremos que x es un vertice aislado. Al grafo con todos sus vertices aislados se le denomina
grafo nulo, N
n
, de n vertices y aquel cuyos vertices tienen todos grado maximo, es decir,
g(x) = n 1 para todo x V , se le denomina grafo completo, K
n
.
, ,
, ,
N
4
, , , , , ,
K
2
K
3
K
4
,
/
/
/
`
`
`
,
`
`
`
,
Z
Z
Z , `
`
`
|
|
|
|
|
.
.
.
.
, `
`
`
`
\
\
\
\
\
/
/
/
,Z
Z
Z
, `
`
`
,
K
5
4.- En un grafo se verica que

xV
gr(x) = 2 [A[ .
5.2.1 Isomorsmo de grafos.
Observando los grafos de la gura 5.1 puede verse como muchos de ellos presentan, en el fondo,
la misma estructura aunque las conexiones sean entre vertices distintos. As si en G
15
al vertice
x lo llamamos z y al vertice z lo llamamos x obtenemos G
1
. De la misma forma, si en
G
6
intercambiamos la x con la t obtenemos el grafo G
5
, aunque aparezca dibujado de forma
distinta. (De hecho, entre todos solo tienen dos estructuras distintas.)
Es claro que un mismo grafo puede ser dibujado de formas muy distintas, que incluso pueden
hacernos pensar en grafos distintos. Es importante, por tanto, separar la estructura del grafo
de su dibujo o de las etiquetas con que hayamos distinguido sus vertices.
Se dice que un conjunto no vaco V esta etiquetado por E (un conjunto de etiquetas) si a
cada elemento de V lo denotamos con una, y solo una, de las etiquetas de E.
Denicion 6.- Un isomorsmo de grafos es una aplicacion biyectiva entre sus conjuntos de
vertices : V V

que conserva la relacion de adyacencia en los dos sentidos, es decir, tal que
x
i
, x
j
A si, y solo si, (x
i
), (x
j
) A

.
En este caso diremos que los grafos (V, A) y (V

, A

) son isomorfos.
La relacion de isomorfa entre grafos es una relacion de equivalencia. Cada clase de equiva-
lencia denida por esta relacion es un conjunto de grafos isomorfos al que denominaremos grafo
no etiquetado. Este concepto responde a la nocion que se tiene de estructura subyacente en
cada grafo etiquetado.
102
Ejemplo 7.- a) Los grafos G
1
y G
2
de la gura siguiente son isomorfos; basta tomar la
aplicacion dada por (x
i
) = y
i
. Ambos, como grafos isomorfos, pertenecen a la clase
representada por un grafo no etiquetado que podemos dibujar, por ejemplo, como G
3
.
,Z
Z
Z
Z
Z
Z
, ,
, ,
x
1
x
3
x
2
x
4
x
5
G
1
, , , /
/
/
/
/
/
,
Z
Z
Z
Z
Z
Z `
`
`
`
`
`
,
y
4
y
2
y
3
y
1
y
5
G
2
, , , ,
,
G
3
b) Analogamente, en la gura 5.1, el grafo G
5
es isomorfo a los grafos G
6
y G
10
, mientras
que todos los demas son isomorfos a G
1
.

La vericacion de que dos grafos son o no isomorfos es un problema difcil. Para la resolucion
de este problema se suelen buscar datos necesariamente comunes a todos los grafos de una
misma clase de isomorfa. A estos datos se les llama invariantes de un grafo. Por ejemplo, son
claramente invariantes de un grafo
a) su n umero de vertices, [V [ ,
b) su n umero de aristas, [A[
c) la familia de los grados de los vertices, gr(x), para los x V .
Ejemplo 8.- Los pares de grafos de la
gura de la derecha son isomorfos. Com-
probarlo, dando un etiquetado en uno de
los elementos de cada par y etiquetando
de forma identica los vertices correspon-
dientes del otro elemento del par.

, `
`
`
,Z
Z
Z
,
`
`
`,
/
/
/, ,|
|
|
|
|
.
.
.
.
, \
\
\
\
\
`
`
`
`
,
,
,
,
,
,
,
Z
Z
Z
Z
,
,
,
,
Z
Z
Z
Z `
`
`
`
Que dos grafos tengan los mismos invariantes es una condicion necesaria para que dos grafos
sean isomorfos, pero no es una condicion suciente. De hecho, no se conoce ning un conjunto de
invariantes que sean sucientes para asegurar que dos grafos son isomorfos.
En la gura siguiente, los grafos G
1
, G
2
y G
3
tienen el mismo n umero de vertices, el mismo
n umero de aristas, todos tienen 4 vertices de grado 2 y 2 vertices de grado 3; pero no son
isomorfos ning un par de ellos. (Ver ejercicio 5.4.)
,
, , ,
, ,
Z
Z
Z
`
`
`
`
`
`
`
`
`
/
/
/
/
/
/
G
1
,
, , ,
, ,
Z
Z
Z
`
`
`
`
`
`
`
`
`
/
/
/
/
/
/
G
2
,
, , ,
, ,
Z
Z
Z
`
`
`
`
`
`
`
`
`
/
/
/
G
3
5.2.2 Multigrafos.
Denicion 9.- Un multigrafo (no dirigido) G es un par G = (V, A) donde V es un conjunto
no vaco de vertices y A es un conjunto de aristas que se identican con conjuntos de uno
o dos vertices. Es decir, para cada arista a A existen vertices x, y V (no necesariamente
distintos) tales que a = x, y.
Si x = y diremos que la arista a es un lazo. Si a y b son dos aristas distintas incidentes en
los mismos vertices las llamaremos aristas m ultiples.
103
Denicion 10.- Si x es un vertice de un multigrafo G, llamaremos grado de x al n umero
de aristas que inciden en x, considerando que cada lazo incide dos veces en el vertice. Lo
representaremos por gr(x) = (n um aristas incidentes) + 2(n um lazos).
Recordemos que todo grafo es un multigrafo y, en consecuencia, los resultados validos para
multigrafos genericos los son tambien para grafos. El concepto de etiquetado de grafos, isomor-
smo de grafos y grafo no etiquetado, se transladan a multigrafos sin problemas.
Denicion 11.- Llamaremos subgrafo del multigrafo (V, A) a un (multi)grafo (W, B) con W
V y B A. Al subgrafo (W, B) le llamaremos (sub)grafo parcial o generador cuando
W = V . Diremos que (W, B) es un subgrafo inducido por el multigrafo (V, A) en W V si
se tiene que B =
_
a A : a = x, y con x, y W
_
y lo denotaremos por (W, A[
W
).
En la denicion de subgrafo es necesaria la hipotesis de que (W, B) sea un multigrafo, pues
las condiciones W V y B A no son sucientes (podra tomarse una arista y no sus vertices
adyacentes, lo que no formara un multigrafo). Utilizaremos la notacion (W, B) (V, A) para
indicar que (W, B) es un subgrafo de (V, A).
Notese que, el subgrafo parcial tiene todos los vertices por lo que se forma B eliminando
solamente aristas de A, mientras que en el subgrafo inducido B lo constituyen todas las aristas
de A cuyos vertices adyacentes estan en W , luego se forma eliminando los vertices que no estan
en W y eliminando unicamente las aristas que inciden en alguno de los vertices eliminados.
Ejemplo 12.- En el multigrafo (V, A) de los puentes de Konisberg, consideremos los subgrafos
(V, A

), donde A

= Aaristas incidentes en y, y (W, A[


W
), donde W = x, z, w.
,
z
,
y
, x
, w
.
.
.
.
.
.

(V, A)
,
z
,
y
, x
, w
.
.
.
.
.
.

(V, A

)
,
z
, x
, w
.
.
.
.
.
.

(W, A[
W
)
(V, A

) es un grafo parcial de (V, A), solo hemos eliminado aristas, y (W, A[


W
) es un subgrafo
inducido, donde hemos eliminado el vertice y y todas las aristas incidentes o adyacentes a el.
5.3 Trayectorias y conexion.
Denicion 13.- Sea G = (V, A) un multigrafo. Una sucesion alternada de vertices y aristas,
x
1
a
1
x
2
x
p
a
p
x
p+1
tal que a
i
= x
i
, x
i+1
, para cada i = 1, 2, . . . , p, la llamaremos trayectoria
y diremos que conecta o une el vertice x
1
y el vertice x
p+1
. Del n umero de aristas recorridas,
p, diremos que es la longitud de la trayectoria.
Si x
1
= x
p+1
, diremos que la trayectoria es cerrada.
Denicion 14.- Llamaremos cola a una trayectoria con las aristas distintas y llamaremos cir-
cuito a una cola cerrada.
Llamaremos camino a una trayectoria sin vertices repetidos, salvo el primero y el ultimo,
en cuyo caso diremos que el camino es cerrado y lo llamaremos ciclo.
Un (multi)grafo diremos que es acclico si no posee ciclos.
En un grafo simple, sin aristas m ultiples, para indicar una trayectoria basta con la sucesion
de vertices x
1
x
2
x
p+1
, pues las aristas de la sucesion estan determinadas (solo hay una arista
posible entre dos vertices consecutivos de la sucesion).
104
Denicion 15.- Un multigrafo es conexo si todo par de vertices esta unido por una trayectoria.
Denimos entre los vertices de un multigrafo (V, A) la relacion:
x

y x = y o existe una trayectoria que une x e y.


Esta relacion es de equivalencia en el conjunto de los vertices V y sus clases de equivalencia V
1
,
. . . , V
r
denen un particion de V . Para cada i = 1, . . . , r, el subgrafo inducido (V
i
, A[
V
i
) es
conexo y diremos que es una componente conexa del multigrafo (V, A).
Ademas de los vistos anteriormente, cada uno de los siguientes datos es tambien invariante
para la isomorfa de grafos:
d) el n umero y longitud de los ciclos.
e) el n umero de componentes conexas.
f) estos y los anteriores considerados para cada componente conexa.
Ejemplo 16.- Consideremos los cuatro grafos de la gura siguiente.
, ,
, ,
, , ,
, ,
, ,
, , ,
, ,
, ,
, , ,
, ,
, ,
, , ,
`
`
`
`
`
`
`
`
/
/
/
/
/
/
/
/
`
`
`
`
`
`
`
`
/
/
/
/
/
/
/
/
`
`
`
`
/
/
/
/
G
1
G
2
.
.
.
.
..
`
`
`
`
`` /
/
/
/
.
.
.
.
..
`
`
`
`
` `
.
.
.
.
. .
G
3
.
.
.
.
..
`
`
`
`
`` /
/
/
/
/
/
/
.
.
.
.
..
`
`
`
`
` `
/
/
/
/
G
4
Los grafos G
1
, G
2
y G
3
tienen 7 vertices, 8 aristas, 5 vertices de grado 2 y 2 vertices de grado
3, sin embargo no hay ning un isomorsmo entre ellos: G
1
es conexo y tiene un ciclo de longitud
3, G
2
es conexo pero no tiene un ciclo de longitud 3 y G
3
no es conexo (tiene dos componentes
conexas). El grafo G
4
sin embargo s es isomorfo a uno de los anteriores, a cual?

5.3.1 Recorrido de aristas. Grafos eulerianos.


Denicion 17.- Llamaremos cola euleriana en un multigrafo a una cola (trayectoria sin aris-
tas repetidas) que recorra todas las aristas del multigrafo. Si la cola euleriana es cerrada la
llamaremos circuito euleriano.
A un multigrafo que contenga un circuito euleriano le llamaremos multigrafo euleriano.
Ejemplo 18.- Consideremos los grafos: C
5
(los grafos ciclo, constan solo de un ciclo, se denotan
por C
n
donde n es el n umero de vertices), la Estrella de Mahoma y el multigrafo de los puentes
de Konisberg.
, `
`
`
,Z
Z
Z
,
`
`
`,
/
/
/, ,|
|
|
|
|
|
.
.
.
.
, \
\
\
\
\
\
`
`
`
`
,
,
,
,
z
,
y
, x
, w
.
.
.
.
.
.
.

Los dos primeros son grafos eulerianos, el primero obviamente y en el segundo puede formarse un
circuito con sus aristas (de hecho es isomorfo a C
5
, ver el ejemplo 8). El tercero no es euleriano
puesto que no tiene un circuito euleriano, mas a un tampoco tiene una cola euleriana.

Teorema 19.- Un multigrafo (nito) conexo tiene un circuito euleriano si, y solo si, todos sus
vertices son de grado par.
105
Demostracion:
=| (Teorema de Euler) Como el circuito recorre todas las aristas, cada vez que se accede a
un vertice por una arista se sale por otra distinta, luego el grado de cada vertice debe ser
par.
=| Sea G = (V, A) el multigrafo. Empezando en un vertice x cualquiera, se construye una
cola xa
1
x
1
a
2
x
2
x
p1
a
p
x
p
lo mas larga posible. Como de x
p
no se puede seguir, se han
recorrido todas las aristas incidentes en x
p
, este vertice tiene que aparecer anteriormente
en la cola construida (gr(x
p
) 2); considerando la parte de la cola desde la primera
aparicion de x
p
hasta el nal, tenemos un circuito C
1
que empieza y acaba en x
p
.
Si el circuito C
1
no recorre todas las aristas de G, eliminamos todas las aristas de C
1
(y los vertices que queden aislados) y repetimos el proceso en el subgrafo que queda (los
vertices que permanecen siguen teniendo grado par). Obtendremos as una cantidad nita
de circuitos C
1
, . . . , C
r
de manera que cada arista de G esta contenida uno de esos
circuitos.
Como G es conexo los circuitos tienen que tener vertices comunes con alg un otro, luego
basta con englobar todos ellos en uno solo que, por tanto, sera euleriano.
Corolario 20.- Un multigrafo conexo tiene una cola euleriana si, y solo si, no tiene vertices de
grado impar o tiene un unico par de vertices de grado impar.
Demostracion:
Supongamos que tiene una la cola euleriana que empieza en x y termina en y, entonces:
Si x = y, la cola es un circuito euleriano, por lo que todos los vertices tienen grado par.
Si x ,= y, a nadimos una arista que una x e y teniendo as un circuito euleriano con todos
los vertices de grado par. Luego, los vertices x e y son los unicos con grado impar.
Recprocamente, si hay dos vertices de grado impar basta a nadir una arista uniendo esos
vertices y aplicar el teorema anterior.
Algoritmo de Fleury 21.- Si un multigrafo (V, A) tiene una cola euleriana C, puede construirse
mediante el siguiente algoritmo:
P.1.- Empezar en un vertice x de grado impar. Si no lo hay, empezar en cualquier vertice x.
Hacer C = x.
P.2.- Si gr(x) = 0 parar.
P.3.- Si gr(x) = 1 con a = x, y, tomar (V, A) = (V x, A a), hacer C = Cay y
continuar en P.5.
P.4.- Si gr(x) > 1 elegir una arista a = x, y que no desconecte el multigrafo. Tomar (V, A) =
(V, Aa) y hacer C = Cay.
P.5.- Reemplazar x por y y volver a P.2.
106
5.3.2 Recorrido de vertices. Grafos hamiltonianos.
Denicion 22.- Llamaremos camino hamiltoniano en un multigrafo a un camino (trayectoria
sin vertices repetidos) que recorre todos los vertices del multigrafo. Si el camino Hamiltoniano
es un camino cerrado le llamaremos ciclo hamiltoniano. En este caso se dice, tambien, que el
grafo es hamiltoniano.
Ejemplo 23.- Los dos primeros grafos de la gura son hamiltonianos, el tercero no es hamil-
toniano pero admite caminos hamiltonianos y el cuarto no admite caminos hamiltonianos.
, ,/
/
/
, `
`
`
,
Z
Z
Z,
`
`
` ,|
|
|
|
|
|
.
.
.
.
.
,/
/
/
\
\
\
\
\
\
`
`
`
`
`
, `
`
`
,
Z
Z
Z,
`
`
`
, ,Z
Z
Z
`
`
`,/
/
/
,
`
`
`,

,Z
Z
,/
/
/
,
,
`
`
`
`
`
,
,
No hay caracterizaciones sencillas de grafos hamiltonianos y tampoco se conocen algoritmos
ecientes para su obtencion. No obstante, deben tenerse en cuenta algunas peque nas cosas:
los lazos y las aristas m ultiples no son utiles para la obtencion de ciclos hamiltonianos,
el grafo ha de ser conexo y vericarse necesariamente que gr(x) 2, para todo x V .
De esta ultima condicion, se tiene que [A[ [V [ .
Sin embargo, s existen condiciones sucientes (pero no necesarias) para que un grafo sea
hamiltoniano aunque no son muy nas, pues solo aseguran la existencia del ciclo hamiltoniano
en los grafos con muchas aristas:
Teorema 24.- Cada una de las condiciones sigu-
ientes es suciente para que un grafo conexo
(V, A), con [V [ = n, sea un grafo Hamiltoni-
ano.
1.- gr(x)
n
2
para todo x V .
2.- [A[
(n1)(n2)
2
+ 2.
3.- gr(x) + gr(y) n, para todo x, y / A.
,/
/
/
/
.
.
.
.
..
,


`
`
`
`
, ,
,
_
x
, `
`
`

, , ,
,
Z
Z
Z
`
`
`

x
Estos grafos son hamiltonianos y mues-
tran la no necesidad de las condiciones de
la izquierda.
5.4 Matrices asociadas a los grafos.
5.4.1 Matriz de adyacencia de un multigrafo.
Denicion 25.- Llamaremos matriz de adyacencia o simplemente matriz de un multigrafo
G = (V, A) con conjunto de vertices V = x
1
, x
2
, . . . , x
n
, a la matriz cuadrada M
G
= (m
ij
)
nn
donde m
ij
=

_
a A : a = x
i
, x
j

.
Ejemplo 26.- Consideremos
el multigrafo de la derecha.
Su matriz de adyacencia es la
que aparece a continuacion.
,

.
.
.
,
, ,
,
_
x
3
x
1
x
2
x
5
x
4
M
G
=
_
_
_
_
_
_
_
0 2 1 0 0
2 0 1 0 0
1 1 0 0 0
0 0 0 0 1
0 0 0 1 1
_
_
_
_
_
_
_
107
Puede observarse que en la matriz aparece un en las posiciones 12
y 21 indicando que hay dos aristas de x
1
a x
2
y dos aristas de x
2
a
x
1
.
Aparece un 1 en la posicion 55, luego existe un lazo en x
5
.
Los vertices x
4
y x
5
no estan conectados con los anteriores, luego
estan es una componente conexa distinta que los otros tres.
M
G
=
_
_
_
_
_
_
_
0 1 0 0
0 1 0 0
1 1 0 0 0
0 0 0 0 1
0 0 0 1 1
_
_
_
_
_
_
_
Observaciones 27.- 1.- La matriz M
G
es simetrica. Si G no tiene lazos la diagonal principal
es nula, y si G es simple, M
G
esta formada unicamente por ceros y unos.
2.- El grado de un vertice x
i
es la suma de los elementos de la la (o columna) i-esima mas el
n umero de lazos en ese vertice. Es decir, gr(x
i
) =
n

k=1
m
ik
+m
ii
_
=
n

k=1
m
ki
+m
ii
_
(cada
lazo cuenta 1 en la matriz, pero cuenta 2 en el grado del vertice).
3.- En las potencias de la matriz, M
k
G
= (m
(k)
ij
) cada entrada m
(k)
ij
indica el n umero de
trayectorias de longitud k entre el vertice x
i
y el vertice x
j
.
5.4.2 Caminos de peso mnimo.
Denicion 28.- Llamaremos peso de un multigrafo (V, A) a toda funcion real positiva sobre el
conjunto de aristas del grafo, es decir, a toda w: A IR
+
y llamaremos multigrafo pesado a
la terna (V, A, w).
El peso de cada arista a lo denotaremos por w(a) = w
a
y llamaremos peso de una
trayectoria T = x
1
a
1
x
2
x
p
a
p
x
p+1
a la suma de los pesos de las aristas que la componen
w(T) =
p

i=1
w(a
i
) =
p

i=1
w
a
i
.
Denicion 29.- Si G = (V, A, w) es un grafo pesado simple, el peso de cada arista x
i
, x
j
lo
denotaremos por w
ij
= w(x
i
, x
j
) y llamaremos matriz de pesos del grafo G a la matriz
W = (w
ij
)
nn
, donde pondremos w
ij
= si x
i
, x
j
/ A.
Para cada par de vertices x
i
, x
j
V , llamaremos peso mnimo de x
i
a x
j
al n umero
w

ij
= mn
_
w(x
1
x
2
x
p
) : x
1
x
2
x
p
es una trayectoria que conecta x
i
con x
j
_
.
Llamaremos camino (de peso) mnimo entre x
i
y x
j
a cualquier camino entre ellos que tenga
peso mnimo w

ij
(si x
i
= x
j
el camino puede ser cerrado). La matriz de pesos mnimos es
la matriz W

= (w

ij
) con w

ij
= si no existe un camino que conecte x
i
con x
j
.
Proposicion 30.- Sea G = (V, A, w) un grafo pesado. Si x
1
x
2
x
p1
x
p
es un camino mnimo
y 1 i p, entonces x
1
x
i
y x
i
x
p
son caminos mnimos y w

1p
= w

1i
+w

ip
.
Demostracion:
Es claro el resultado, pues si C
1i
= x
1
x
2
x
i1
x
i
no es un camino mnimo, existe otro
C

1i
= x
1
x

2
x

i1
x
i
, con w(C

1i
) < w(C
1i
), luego el peso del camino x
1
x

2
x

i1
x
i
x
p
es
menor que el de x
1
x
2
x
i1
x
i
x
p
, en contra de la hipotesis.
5.4.2.1 Algoritmo de Dijkstra.
Usando la matriz de pesos, el algoritmo de Dijkstra proporciona los pesos mnimos desde un
vertice dado al resto de los vertices. En cada paso, va seleccionando un vertice para el que haya
obtenido un camino mnimo desde el vertice inicial. De esta forma, cuando ha seleccionado todos
los vertices se tienen todos los pesos mnimos desde el vertice inicial al resto de los vertices.
108
Sea (V, A, w) un grafo pesado etiquetado por E = 1, . . . , n y sea W = (w
ij
) su matriz de
pesos. Consideremos x
p
el vertice inicial.
En la aplicacion del algoritmo, interviene un conjunto o lista de ndices L y un vector de
pesos D(j), para j = 1, . . . , n. En cada paso, L contiene los ndices de los vertices seleccionados
anteriormente y se incrementa con un nuevo vertice que no esta en L; inicialmente L = p. El
valor de D(j), para cada j , indica el menor peso de los caminos que unen el vertice inicial x
p
con
x
j
y cuyos vertices intermedios del camino solo pueden ser vertices seleccionados actualmente
en L; inicialmente D es la p-esima la de W . En pseudocodigo, el algoritmo sera:
Inicio
L = p
Cargar D con la p-esima la de la matriz de pesos W
Mientras sea V ,= L
Tomar k V L con D(k) mnimo
L = L k
Para cada j / L
Si D(j) > D(k) +w
kj
entonces
D(j) = D(k) +w
kj
fin si.
fin para.
fin mientras.
Fin.
Ejemplo 31.- Para el grafo de la gura se describe a continuacion la matriz de pesos W y
se aplica el algoritmo de Dijkstra para hallar los pesos mnimos desde el vertice x
1
a los otros
vertices del grafo.
,Z
Z
Z
Z
Z
Z
, Z
Z
Z
Z
Z
Z
,
,
`
`
`
Z
Z
Z
,
`
`
`
`
`
`
,
`
`
`
`
`
`
,
x
3
x
5
x
7
x
1
x
2
x
4
x
6
9
3
2
7
1
1
7
5
9
8
2
4
W x
1
x
2
x
3
x
4
x
5
x
6
x
7
x
1
3 9
x
2
3 2 7 1
x
3
9 2 7 1
x
4
7 7 5 2 8
x
5
1 1 5 9
x
6
2 9 4
x
7
8 4
L D(1) D(2) D(3) D(4) D(5) D(6) D(7) Comentarios
1 3 9 w

12
= 3 = w(x
1
x
2
)
1, 2 3 5 10 4
w(x
1
x
2
x
3
) < w(x
1
x
3
)
w(x
1
x
2
x
4
) < w(x
1
x
4
)
w(x
1
x
2
x
5
) < w(x
1
x
5
)
w

15
= 4 = w(x
1
x
2
x
5
)
1, 2, 5 3 5 9 4 13
w(x
1
x
2
x
5
x
3
) = w(x
1
x
2
x
3
)
w(x
1
x
2
x
5
x
4
) < w(x
1
x
2
x
4
)
w(x
1
x
2
x
5
x
6
) < w(x
1
x
6
)
w

13
= 5 = w(x
1
x
2
x
5
x
3
) = w(x
1
x
2
x
3
)
1, 2, 5, 3 3 5 9 4 13 w

14
= 9 = w(x
1
x
2
x
5
x
4
)
1, 2, 5, 3, 4 3 5 9 4 11 17
w(x
1
x
2
x
5
x
4
x
6
) < w(x
1
x
2
x
5
x
6
)
w(x
1
x
2
x
5
x
4
x
7
) < w(x
1
x
7
)
w

16
= 11 = w(x
1
x
2
x
5
x
4
x
6
)
1, 2, 5, 3, 4, 6 3 5 9 4 11 15
w(x
1
x
2
x
5
x
4
x
6
x
7
) < w(x
1
x
2
x
5
x
4
x
7
)
w

17
= 15 = w(x
1
x
2
x
5
x
4
x
6
x
7
)
109
Gracamente el proceso realizado por el algoritmo es el siguiente:
[En cada paso, representamos con lneas continuas los caminos que desde x
1
ya son de peso mnimo y con lneas
discontinuas los caminos a los demas vertices que, en este momento del algoritmo, tienen menor peso (el peso se
indica entre corchetes) y son subceptibles de mejora; para los vertices aislados el peso es ]
,
,
, ,
, ,
,
[3]
[9]
x
1
,
,
, ,
, ,
,
Z
Z
3
2
[5]
1
[4]
7
[10]
x
1
x
2
,
,
, ,
, ,
,
Z
Z
3
2
`
`
`
1
1
[5]
5
[9]
9
[13]
x
1
x
2
x
5
,
,
, ,
, ,
,
Z
Z
3
2
`
`
`
1
5
[9]
9
[13]
x
1
x
2
x
5
x
3
,
,
, ,
, ,
,
Z
Z
3
2
`
`
`
1
5
2
[11]
8
[17]
x
1
x
2
x
5
x
3
x
4
,
,
, ,
, ,
,
Z
Z
3
2
`
`
`
1
5
2
4
[15]
x
1
x
2
x
5
x
3
x
4
x
6
,
,
, ,
, ,
,
Z
Z
3
2
`
`
`
1
5
2
4 x
1
x
2
x
5
x
3
x
4
x
6
x
7
5.4.2.2 Algoritmo de Warshall.
Este algoritmo proporciona, tambien a partir de la matriz de pesos W , la matriz W

de los
pesos mnimos
1
.
La forma de hacerlo es exhaustiva: se mira si cada peso entre los vertices se puede hacer mas
peque no buscando un camino que pase por el primer vertice x
1
, se comprueba si cada peso se
puede minorar a un mas mediante un camino que pase por el vertice x
2
, y sucesivamente hasta
hacerlo con los n vertices.
Se obtiene as una sucesion de matrices
_
W
(k)
= (w
(k)
ij
)
_
0kn
, que contienen los pesos mas
peque nos posibles en cada paso, y que se inicia con W
(0)
= W y acaba con W
(n)
= W

.
El algoritmo en pseudocodigo es:
Inicio
Cargar W
(0)
= (w
(0)
ij
) con la matriz de pesos W
Hacer, desde k = 0 hasta n 1
Hacer, desde i = 1 hasta n
Hacer, desde j = 1 hasta n
w
(k+1)
ij
= mn
_
w
(k)
i j
, w
(k)
i k+1
+w
(k)
k+1 j
_
.
Fin hacer
Fin hacer
Fin hacer
Fin
Ejemplo 32.- En el siguiente ejemplo se aplica el algoritmo de Warshall para hallar la matriz
de peso mnimo del grafo de la gura.
,Z
Z
Z
, `
`
`
,
`
`
`
, ,
,

.
.
.
.
.
.
x
4
x
5
x
1
x
2
x
3
x
6
2 4 1
7 4
1
2 2
w
(0)
ij
= w
ij
W = W
(0)
=
_
_
_
_
_
_
_
_
_
7 2 2
7 4 4 1 1
4 2
2 4
1
2 1 2
_
_
_
_
_
_
_
_
_
1
Ver la observaci on 33 posterior
110
w
(1)
ij
= mnw
(0)
ij
, w
(0)
i1
+w
(0)
1j

W
(1)
=
_
_
_
_
_
_
_
_
_
7 2 2
7 14 4 4 1 1
4 2
2 4 4 4
1
2 1 2 4 4
_
_
_
_
_
_
_
_
_
w
(2)
ij
= mnw
(1)
ij
, w
(1)
i2
+w
(1)
2j

W
(2)
=
_
_
_
_
_
_
_
_
_
14 7 11 2 8 2
7 14 4 4 1 1
11 4 8 8 5 2
2 4 8 4 5 4
8 1 5 5 2 2
2 1 2 4 2 2
_
_
_
_
_
_
_
_
_
w
(3)
ij
= mnw
(2)
ij
, w
(2)
i3
+w
(2)
3j

W
(3)
=
_
_
_
_
_
_
_
_
_
14 7 11 2 8 2
7 8 4 4 1 1
11 4 8 8 5 2
2 4 8 4 5 4
8 1 5 5 2 2
2 1 2 4 2 2
_
_
_
_
_
_
_
_
_
w
(4)
ij
= mnw
(3)
ij
, w
(3)
i4
+w
(3)
4j

W
(4)
=
_
_
_
_
_
_
_
_
_
4 6 10 2 7 2
6 8 4 4 1 1
10 4 8 8 5 2
2 4 8 4 5 4
7 1 5 5 2 2
2 1 2 4 2 2
_
_
_
_
_
_
_
_
_
w
(5)
ij
= mnw
(4)
ij
, w
(4)
i5
+w
(4)
5j

W
(5)
=
_
_
_
_
_
_
_
_
_
4 6 10 2 7 2
6 2 4 4 1 1
10 4 8 8 5 2
2 4 8 4 5 4
7 1 5 5 2 2
2 1 2 4 2 2
_
_
_
_
_
_
_
_
_
w
(6)
ij
= mnw
(5)
ij
, w
(5)
i6
+w
(5)
6j

W
(6)
=
_
_
_
_
_
_
_
_
_
4 3 4 2 4 2
3 2 3 4 1 1
4 3 4 6 4 2
2 4 6 4 5 4
4 1 4 5 2 2
2 1 2 4 2 2
_
_
_
_
_
_
_
_
_
= W

.
Observacion 33.- Los algoritmos de Dijkstra y de Warshall, buscan el peso mnimo entre
vertices mediante la matriz de pesos, matriz que no puede construirse para los multigrafos
no simples, lo que impide el uso de estos algoritmos en dichos multigrafos. Sin embargo, en la
b usqueda de un camino de peso mnimo en un multigrafo, de las aristas m ultiples solo es util
la de menor peso, pues no puede usarse mas que una de ellas y en ese caso se elegira aque-
lla. Entonces, basta con considerar del multigrafo el subgrafo parcial util, que no tiene aristas
m ultiples, y construir su matriz de pesos (lo que ahora s es posible).
Los pesos mnimos que se obtienen en la matriz nal del algoritmo de Warshall, W
(n)
,
relativos a vertices distintos se corresponden con caminos de peso mnimo, mientras que los
elementos de la diagonal principal w
(n)
ii
se obtienen de recorrer la arista de menor peso que sale
del vertice y recorrerla de vuelta al vertice, es decir, w
(n)
ii
= w(x
i
x
k
x
i
) si la arista incidente en
x
i
de menor peso es x
i
, x
k
, por lo que no es un camino sino una trayectoria cerrada.
En ocasiones y cuando se buscan pesos mnimos por caminos, para evitar la interferencia de
las trayectorias cerradas comentadas antes, se usa el algoritmo sobre una variante de la matriz
de pesos que consiste en hacer w
ii
= 0, para todo i. De esta forma el peso para ir de x
i
a x
i
es 0 y el peso mnimo obtenido tambien sera cero.
5.5 Grafos dirigidos.
Denicion 34.- Llamaremos digrafo o grafo dirigido a un par D = (V, A) donde V es un
conjunto nito no vaco de vertices y A V V su conjunto de arcos. Si (x, y) A
diremos que el arco (x, y) une el vertice x con el vertice y, que x es adyacente a y, que y
111
es adyacente desde x y que x e y son respectivamente el vertice inicial y el vertice nal del
arco (x, y).
Denicion 35.- Si x es un vertice de un digrafo D, llamaremos ingrado de x al n umero de arcos
que tienen a x como vertice nal y lo representaremos por ing(x) = [y V : (y, x) A[ , lla-
maremos exgrado de x al n umero de arcos que tienen a x como vertice inicial y lo representare-
mos por exg(x) = [y V : (x, y) A[ y llamaremos grado de x a gr(x) = ing(x) + exg(x).
Observaciones 36.- 1.- Si D = (V, A) es un digrafo y [V [ = n y [A[ = m, el n umero de arcos
verica que 0 m n(n 1) = [V V [ .
2.- Dados n vertices, pueden formarse
_
n(n1)
m
_
digrafos distintos con exactamente m aristas.
Por tanto, el n umero total de digrafos con n vertices es
n(n1)

m=0
_
n(n1)
m
_
= 2
n(n1)
.
En la gura 5.2 siguiente pueden verse los 15 digrafos de 3 vertices y 2 arcos.
x
z y
, ,
,
, ,
,
, ,
,
, ,
,
, ,
,
, ,
,
, ,
,
, ,
,
, ,
,
, ,
,
, ,
,
, ,
,
, ,
,
, ,
,
, ,
,
D
1
D
2
D
3
D
4
D
5
D
6
D
7
D
8
D
9
D
10
D
11
D
12
D
13
D
14
D
15

-
`
``

-
`
`
` `

`
``
`
``
`
``

`
`
` `
`
` `

`
` `

Fig. 5.2. Todos los digrafos de 3 vertices y 2 arcos.


3.- Si D = (V, A) y [V [ = n, en cada vertice se tiene 0 ing(x) n1 y 0 exg(x) n1.
Si ing(x) = 0 diremos que x es un vertice minimal o fuente; si exg(x) = 0 diremos que
x es un vertice maximal, pozo o sumidero. Si ing(x) = exg(x) = 0 diremos que x es
un vertice aislado.
4.- Se llama digrafo completo de n vertices,

K
n
, al digrafo cuyos vertices tienen todos
ingrado y exgrado maximo.
, , , , , ,
_
_
_
_
_
_
, , ,
'
'
'
'
_
_

K
2

K
3

K
4
5.- En un digrafo se verica que

xV
ing(x) =

xV
exg(x) = [A[ .
5.5.1 Isomorsmo de digrafos.
El isomorsmo para digrafos es analogo al de grafos no dirigidos:
Denicion 37.- Un isomorsmo de digrafos es una aplicacion biyectiva entre sus conjuntos
de vertices : V V

que conserva la relacion de adyacencia en los dos sentidos, es decir


(x
i
, x
j
) A si, y solo si, ((x
i
), (x
j
)) A

.
En este caso diremos que los digrafos (V, A) y (V

, A

) son isomorfos.
112
La relacion de equivalencia dada por el isomorsmo y el concepto de digrafos no etiquetados,
son analogos a los vistos para grafos no dirigidos.
Para los digrafos tambien son invariantes [V [ , [A[ y el grado de los vertices. Ahora bien,
en este caso el isomorsmo debe respetar ademas la direccion de los arcos (a cada arco dirigido
(x
i
, x
j
) le debe corresponder el arco dirigido ((x
i
), (x
j
))), luego los vertices identicables por
el isomorsmo han de tener el mismo ingrado y el mismo exgrado. Es decir:
la familia de pares, (ing(x), exg(x)) para los x V , es un invariante para digrafos.
As, en la gura 5.2, los digrafos D
1
y D
11
no pueden ser isomorfos pues el vertice x en D
1
tiene dos arcos salientes mientras que en D
11
ning un vertice tiene dos arcos salientes.
Ejemplos 38.- a) Los siguientes son ejemplos de pares de grafos isomorfos, como se puede
comprobar tomando como biyeccion entre los conjuntos de vertices la dada por (x) = x.
,
'
,
Z
Z
Z
_
,
Z
Z
Z
`
`
`
,
`
`
`
a
c
d
b
,Z
Z
Z
/
/
/
/
/
/
, `
`
``
_
,
'
,
`
`
`
`
`
`*
c d
b
a
,

_
, `
`
`"
,
Z
Z
Z
,
`
`
`
, _ _
'
'

a
b
c
d
e
, _ |
|
|
|
|
|*
, \
\
\
\
\
\
`
`
`
`
`*
,
/
/
/
.
.
.
.
.
_ `
`
``
,
Z
Z
Z
,
`
`
`*
c d
e
a
b
b) En la gura 5.2 solo hay cuatro digrafos distintos no isomorfos, todos los demas son
isomorfos a alguno de esos cuatro. (Ver ejercicio 5.20.)
c) Para los tres digrafos de la gura siguiente coinciden todos los invariantes mencionados
anteriormente, pero esto no es suciente para poder armar que son isomorfos. De hecho,
el lector podra probar que solo dos de ellos son isomorfos. (Ver ejercicio 5.21.)
, _ /
//
,
`
``,/
/
/
,
,
`
`
`
,
`
`
`*
Z
Z
Z
, `
`
`
,
,/
/
/
_
,
`
`
`
,
.
.
.,
,Z
Z
Z
-
-
-
,|
|
|
|
|
|*
,
, \
\
\
\
\
\
_
,
'
,
.
.
.,
, _
`
`
`
``
5.5.2 Multidigrafos.
Denicion 39.- Llamaremos multidigrafo o multigrafo dirigido a un par D = (V, A) donde
V es un conjunto no vaco de vertices y A es un conjunto de arcos que se identican con pares
de vertices. De modo que, para cada arco a A existen vertices x, y V tales que a = (x, y).
Llamaremos arcos m ultiples a los arcos distintos que tienen los mismos vertices inicial y
nal. Los arcos de la forma (x, x) se llaman lazos dirigidos o lazos.
Observaciones 40.- 1.- En los multidigrafos, cada lazo aporta 1 al ingrado y 1 al exgrado del
vertice.
2.- El isomorsmo de digrafos se extiende sin dicultad a multidigrafos.
3.- Las deniciones de subgrafo, subgrafo parcial y subgrafo inducido de un multidigrafo son
analogas al caso no dirigido.
Denicion 41.- A cada (multi)digrafo se le asocia un multigrafo no dirigido, que se obtiene susti-
tuyendo cada arco (x, y) por una arista x, y, y se le dice multigrafo no dirigido subyacente
al (multi)digrafo.
Un multidigrafo es conexo si su multigrafo subyacente es conexo.
113
5.5.3 Trayectorias y ciclos.
Denicion 42.- Sea D = (V, A) un multidigrafo. Llamaremos trayectoria a una sucesion
alternada de vertices y arcos, x
1
a
1
x
2
x
p
a
p
x
p+1
tales que a
i
= (x
i
, x
i+1
), para cada i =
1, 2, . . . , p, y diremos que une el vertice x
1
con el vertice x
p+1
. Del n umero de arcos recorridos
diremos que es la longitud de la trayectoria. Si x
1
= x
p+1
, diremos que la trayectoria es
cerrada.
Llamaremos cola a una trayectoria con todos los arcos distintos y circuito a una cola
cerrada.
Llamaremos camino a una trayectoria sin vertices repetidos y ciclo a un camino cerrado.
Diremos que el multidigrafo es acclico si no posee ciclos.
Mientras que en los grafos no dirigidos las aristas se pueden recorrer en cualquier direccion,
en los grafos dirigidos los arcos solo se pueden recorrer en un sentido, por lo que las trayectorias
(colas, ciclos, etc.) son siempre trayectorias dirigidas que se recorren en el sentido que indica la
echa.
En los digrafos, al no haber arcos m ultiples, las trayectorias quedan denidas dando unicamente
la sucesion de vertices.
En el multidigrafo de la derecha, no hay ning un camino
de x
1
a x
3
ni a x
4
. No hay ning un camino de x
2
a x
4
, pero
si hay dos caminos de x
4
a x
2
. De x
1
a x
2
hay dos caminos
(uno por cada arco del arco m ultiple) y ninguno de x
2
a x
1
.
El multidigrafo es acclico.
, ,
,
,
'
`
`
``
Z
Z
Z
_
_
x
1
x
2
x
3
x
4
A los digrafos ciclo, es decir, formados por un unico ciclo dirigido
se los denomina

C
n
, donde n es el n umero de vertices. ,
, ,
,
`

C
4
El n umero de componentes conexas y el n umero y longitud de los ciclos, son tambien invari-
antes por el isomorsmo de multidigrafos.
5.5.4 Representaciones matriciales.
La representacion matricial para multidigrafos es analoga al caso no dirigido, por lo que tras
la denicion, unicamente daremos unas observaciones donde puntualizaremos y explicaremos lo
que sea de interes o diferente.
Denicion 43.- Llamaremos matriz de adyacencia o simplemente matriz de un multidigrafo
D = (V, A) con conjunto de vertices V = x
1
, x
2
, . . . , x
n
, a la matriz cuadrada M
D
= (m
ij
)
nn
donde m
ij
=

_
a A : a = (x
i
, x
j
)
_

.
Observaciones 44.- 1.- La matriz M
D
no tiene por que ser simetrica. Si D es simple, M
G
esta formada unicamente por ceros y unos, con ceros en la diagonal.
2.- El exgrado/ingrado de un vertice x
i
es la suma de los elementos de la la/columna i-esima.
3.- En las potencias de la matriz, M
k
D
= (m
(k)
ij
) cada entrada m
(k)
ij
indica el n umero de
trayectorias (dirigidas) de longitud k del vertice x
i
al vertice x
j
.
4.- G es acclico m
(k)
ii
= 0 para todo i = 1, . . . , n y para todo k 1.
5.- Los grafos dirigidos pesados, la matriz de pesos para los digrafos y los caminos de peso
mnimo se obtienen como en el caso no dirigido.
Los algoritmos de Dijkstra y Warshall son validos tambien en los digrafos. En el caso del
algoritmo de Warshall, en la diagonal de la matriz nal s se obtienen los pesos mnimos
de ciclos (a diferencia de lo que ocurra en el caso no dirigido).
114
5.5.5 Los digrafos vistos como relaciones binarias.
De la denicion se deduce que un digrafo simple no es otra cosa que una relacion binaria an-
tirreexiva. De este modo, un digrafo sera simetrico, antisimetrico o transitivo si lo es como
relacion binaria. Al no haber lazos en el digrafo, la denicion de estas propiedades necesita
modicarse ligeramente.
Denicion 45.- Un digrafo (V, A) es simetrico si cuando (x, y) A, entonces (y, x) A.
Es antisimetrico si cuando (x, y) A, entonces (y, x) / A. Es transitivo si cuando
(x, y), (y, z) A, con x ,= z, entonces (x, z) A.
Observaciones 46.- 1.- Los digrafos simetricos y transitivos se corresponden con las rela-
ciones de equivalencia. Si (V, A) es un digrafo simetrico y transitivo, cada componente
conexa (V
i
, A[
V
i
) es un digrafo completo en V
i
. Los conjuntos V
i
, 1 i r, consti-
tuyen una particion de V que dene una relacion de equivalencia en V que no es otra
que la relacion de conexion que utilizamos para denir el concepto de componente conexa.
Recprocamente, a cada relacion de equivalencia en V se le puede asociar de forma obvia
un digrafo simetrico y transitivo cuyas componentes conexas son los digrafos completos
sobre los conjuntos de vertices de cada clase de equivalencia.
2.- Los digrafos antisimetricos y transitivos se corresponden con las relaciones de orden. Si
(V, A) es un digrafo antisimetrico y transitivo, entonces (V, <), donde x < y si, y solo si,
(x, y) A es un orden parcial. Recprocamente, si (V, <) es un orden parcial, entonces
(V, A), donde A = (x, y) : x < y, es un digrafo antisimetrico y transitivo.
5.6 Digrafos acclicos.
El conjunto de los digrafos acclicos tiene propiedades especialmente interesantes. Constituyen
la estructura mas amplia en la que se puede asegurar la existencia de maximales y minimales
y, en consecuencia, son la clase mas amplia de digrafos con la propiedad de que sus puntos se
pueden estraticar en niveles. Se caracterizan, ademas, por admitir etiquetados naturalmente
ordenados. Veremos a continuacion estas cuestiones con mas detalle.
Proposicion 47.- Si (V, A) es un digrafo (nito) acclico admite, al menos, un maximal y un
minimal.
Demostracion:
Si no hubiera maximales todo punto del digrafo sera adyacente a alg un otro, luego par-
tiendo de un punto cualquiera x
1
podramos construir una trayectoria x
1
x
p
tan larga como
quisieramos. Ahora bien, como el digrafo es nito, llega un momento en la trayectoria que
repetiramos vertices, lo que va en contra de la aciclicidad.
Analogamente para los minimales.
Usando la proposicion anterior se obtiene la siguiente caracterizacion para los digrafos
acclicos:
Proposicion 48.- Si (V, A) es un digrafo con [V [ = n, entonces (V, A) es acclico si, y solo si,
se puede etiquetar V en la forma x
1
, x
2
, . . . , x
n
de modo que si (x
i
, x
j
) A, entonces i < j .
En este caso diremos que el digrafo esta naturalmente ordenado.
115
Demostracion:
= Por induccion sobre el n umero de vertices n. Es claramente cierto para n = 1. Supong-
amos entonces que los digrafos acclicos con menos de n vertices pueden ordenarse nat-
uralmente y sea (V, A) un digrafo acclico con n vertices. Elijamos un vertice maximal
x V y asignemosle la etiqueta x
n
. El subgrafo inducido en V x es acclico con n1
vertices, por lo que puede ordenarse naturalmente con x
1
, x
2
, . . . , x
n1
y, en consecuen-
cia, el digrafo (V, A) queda de esta manera naturalmente ordenado (al ser x maximal solo
tiene arcos incidentes que provienen de vertices con ndice menor que n).
= Supongamos que (V, A) posee un ciclo x
a
x
b
x
c
x
a
. Sea i = maxa, b, c, . . . , a y sea x
j
el siguiente a x
i
en el ciclo. Entonces (x
i
, x
j
) A y, como i es maximo, i j ; contra la
hipotesis i < j .
La propia demostracion de que todo digrafo acclico admite un etiquetado naturalmente
ordenado nos proporciona el metodo para construir dicho etiquetado. Si [V [ = n, tomamos
un x V que sea maximal y lo etiquetamos por x
n
; consideramos ahora el subgrafo inducido
(V x
n
, A[
V {x
n
}
) y tomamos en el un y V x
n
que sea maximal y que etiquetamos
por x
n1
; sucesivamente, se repite el proceso hasta acabar con todos los vertices.
En el ejemplo siguiente, construimos un etiquetado naturalmente ordenado sobre el digrafo
etiquetado por V = a, b, c, d, e, f, g, h. A la derecha aparece el digrafo con el etiquetado
naturalmente ordenado, donde hemos colocado todos los vertices en alturas progresivas a n de
que se observe facilmente ese hecho (todos los arcos van de abajo a arriba, de ndice menor a
ndice mayor).
,
a
,
b
,c
,d
,
e
,
f
, g
, h

-
`

,
a
,
b
,c
,d
,
e
,
8
, g
, h

-
`

,
a
,
b
,c
,d
,
e
,
8
, 7
, h


-
`

,
a
,
b
,c
,d
,
6
,
8
, 7
, h


`
,
a
,
b
,c
,d
,
6
,
8
, 7
, 5

`
,
a
,
b
,4
,d
,
6
,
8
, 7
, 5

,
a
,
3
,4
,d
,
6
,
8
, 7
, 5

,
1
,
3
,4
,2
,
6
,
8
, 7
, 5
,
x
1
, x
2
, x
3
,
x
4
,
x
5
,
x
6
,
x
7
,
x
8
`
`
`
`
`
`
`
'
.
.
.
.
`
`
`
`
'
Z
Z
'
/
/
/
/
Z
Z
Z
Z
/
/
/
/
/
`
`
`
``
'
Usando minimales se obtiene la siguiente estraticacion para un digrafo acclico:
Denicion 49.- Si (V, A) es un digrafo acclico con [V [ = n, se pueden denir los siguientes
conjuntos:
N
0
=x V : x es minimal de (V, A),
N
1
=x V N
0
: x es minimal de (V N
0
, A[
V N
0
),
N
2
=
_
x V (N
0
N
1
) : x es minimal de
_
V (N
0
N
1
), A[
V (N
0
N
1
)
__
y, en general, para todo p, con 0 < p n:
N
p
=
_
_
_
x V
p1

r=0
N
r
: x es minimal de
_
V
p1

r=0
N
r
, A[
V
p1

r=0
N
r
_
_
_
_
.
A los conjuntos N
r
les llamaremos niveles del digrafo acclico (V, A) y si x N
r
diremos
que x es un vertice de nivel r.
116
Observaciones 50.- 1.- Notese que para cada p, el digrafo
_
V
p1

r=0
N
r
, A[
V
p1

r=0
N
r
_
es
acclico y, por tanto, tiene sentido el uso del termino minimal en las deniciones de los
N
p
.
2.- La sucesion de los N
p
es estacionaria en el sentido de que existe k, con 0 k n 1,
tal que N
0
,= , . . . , N
k
,= y N
k+1
= = N
n
= .
3.- Los N
p
constituyen una particion de V que escribiremos V =
k

r=0
N
r
, con N
r
,= .
Ejemplo 51.- En el digrafo de la derecha
hemos dibujado el digrafo que aparece a su
izquierda de manera que todas la echas
van hacia arriba; as todos los vertices que
estan a la misma altura estan en el mismo
nivel y el digrafo queda dibujado por nive-
les.
,
a
,
b
, c
, d
,
e
,
f
, g
, h

-
`

`
`
`
`

,
a
, h ,
b
, d
,
g
,
c
,
e
,
f

`
>
>
>
>

/
/
/
/
/
/`

`
`
`
`
`
`

N
0
N
1
N
2
N
3
N
4
Denicion 52.- Diremos que un digrafo acclico esta naturalmente ordenado por niveles si
esta naturalmente ordenado y respeta el orden de los niveles, es decir, si x
i
N
p
y x
j
N
q
con
p < q, entonces i < j .
Para obtener un etiquetado naturalmente ordenado por niveles basta con clasicar los vertices
en niveles V =
k

r=0
N
r
, con N
r
,= , y asignarles etiquetas respetando el orden creciente de los
niveles. Es decir, si [N
r
[ = n
r
se asignan las n
0
primeras etiquetas 1, . . . , n
0
a los vertices de
N
0
, las n
1
etiquetas siguientes n
0
+ 1, . . . , n
0
+n
1
a los vertices de N
1
y as sucesivamente.
Ejemplo 53.- Construimos un etiquetado naturalmente orde-
nado por niveles sobre el digrafo ya dibujado por niveles y eti-
quetado por V = a, b, c, d, e, f, g del ejemplo 51.
Por denicion, todo etiquetado naturalmente ordenado por
niveles es un etiquetado naturalmente ordenado. El recproco
no es cierto: observese que el etiquetado naturalmente orde-
nado, sobre este mismo grafo, que aparece en los comentarios
siguientes a la proposicion 48, no es un etiquetado naturalmente
ordenado por niveles.
,
x
1
, x
2
,
x
3
, x
4
,
x
5 ,
x
6
,
x
7
,
x
8

`
>
>
>
>

/
/
/
/
/`

`
`
`
`
`
`

N
0
N
1
N
2
N
3
N
4
5.7

Arboles.
Tambien en los grafos no dirigidos la aciclicidad da origen a importantes propiedades.
En lo que sigue, vamos a trabajar con los grafos acclicos no dirigidos y con los digrafos
acclicos cuyo grafo no dirigido subyacente es tambien acclico, que por su estructura reciben el
nombre de arboles (bosques). Sobre los arboles (dirigidos o no dirigidos) seguiremos considerando
grafos nitos.
5.7.1 Grafos no dirigidos acclicos.
Recordemos que un grafo acclico no puede tener lazos ni aristas m ultiples.
117
Denicion 54.- Un bosque es un (multi)grafo acclico. A cada componente conexa de un
bosque se le llama arbol. En un arbol, a los vertices de grado uno se les llama hojas.
Teorema 55.- Las siguientes condiciones sobre un grafo (V, A) son equivalentes:
a) (V, A) es un arbol.
b) Cada par de vertices distintos del grafo (V, A) esta unido por un unico camino.
c) (V, A) es conexo y, para cada a A, se tiene que (V, Aa) no es conexo.
d) (V, A) es acclico y, para cada par de vertices x, y con a = x, y / A, se tiene que
(V, A a) no es acclico.
Demostracion:
a)b) Por ser el arbol acclico y conexo cada par de vertices distintos esta unido por un
camino. Si hubiera otro camino uniendo el par de vertices, con los dos caminos se formara
(al menos) un ciclo.
b)c) El grafo es conexo por hipotesis. Si al suprimir la arista a = x, y el grafo resultante
(V, Aa) sigue siendo conexo, es que hay otro camino (ademas de x, y) uniendo los
vertices x e y, en contra de la hipotesis.
c)d) Si (V, A) es conexo y tiene un ciclo, al suprimir una arista del ciclo el grafo resultante
seguira siendo conexo, en contra de la hipotesis, por lo que (V, A) es acclico. Si al grafo
conexo (V, A) le a nadimos una arista a = x, y, con x, y V , se forma un ciclo entre
esta arista y el camino que conecta los vertices x e y en el grafo (V, A).
d)a) Si el grafo acclico (V, A) no fuera un arbol, sera no conexo y, por tanto, tiene un par de
vertices x e y en componentes conexas distintas y al a nadir la arista a = x, y resultara
un grafo igualmente acclico, en contra de la hipotesis.
Lema 56.- Un arbol nito con al menos una arista (o con mas de un vertice) tiene al menos dos
hojas.
Demostracion:
El enunciado es cierto ya que, al ser el arbol acclico y nito existe un camino x
1
x
2
...x
p
de
longitud maxima y, por tanto, x
1
y x
p
son hojas.
Lema 57.- a) Un arbol con n vertices tiene n 1 aristas.
b) Un bosque con n vertices y m componentes conexas tiene n m aristas.
c) Un grafo conexo con n vertices y n 1 aristas es un arbol.
d) Un grafo con n vertices, m componentes conexas y n m aristas es un bosque.
Demostracion:
a) Lo probaremos por induccion. Si n = 1 es claro que no hay aristas. Si el arbol tiene k +1
vertices, con k 1, tiene una hoja x. Si quitamos el vertice x y la unica arista que lo
conecta queda un arbol con k vertices que, por hipotesis, tendra k 1 aristas; por tanto,
el arbol original tena k aristas.
118
b) Cada componente tiene n
i
vertices y n
i
1 aristas, luego el bosque tiene
m

i=1
(n
i
1) = nm
aristas.
c) Si el grafo conexo no fuera un arbol tendra un ciclo. En este ciclo hay igual n umero de
vertices que de aristas y cada uno de los otros vertices forma parte, al menos, de una arista
distinta, por lo que al menos hay n aristas en el grafo, en contra de la hipotesis.
d) Cada componente conexa con n
i
vertices aporta n
i
1 aristas, si es un arbol, o mas si no
lo es. La suma de aristas de todas las componentes conexas es nm, si todas son arboles,
o mayor que este n umero en caso contrario. En consecuencia, el grafo es un bosque.
Teorema 58.- Las siguientes condiciones sobre un grafo (V, A) con [V [ = n son equivalentes:
a) (V, A) es un arbol.
b) (V, A) es conexo y tiene n 1 aristas.
c) (V, A) es acclico y tiene n 1 aristas.
Demostracion:
a)b) Por ser arbol es conexo y por tener n vertices tiene n 1 aristas.
b)a) Es el apartado c) del lema 2.
a)c) Por ser arbol es acclico y por tener n vertices tiene n 1 aristas.
c)a) Si (V, A) es acclico, es un bosque con m componentes conexas luego con nm aristas
y como tiene n 1 aristas, ha de ser m = 1. En consecuencia, es conexo y es un arbol.
5.7.2

Arboles generadores.
Denicion 59.- Llamaremos arbol generador de un multigrafo conexo a todo grafo parcial
que sea arbol. Un arbol generador mnimo de un grafo conexo pesado es un arbol generador
con mnima suma de pesos.
Teorema 60.- Si (V, A) es un (multi)grafo conexo y a es una de sus aristas, entonces:
(V, Aa) es un (multi)grafo conexo a esta en un ciclo.
Demostracion:
Si a es un lazo o una arista m ultiple es trivial. Si la arista a une los vertices x e y, hay otro
camino uniendo estos dos vertices tanto en el (multi)grafo (V, A a), por ser conexo, como
en el ciclo.
Corolario 61.- Todo (multi)grafo conexo nito tiene un arbol generador.
Demostracion:
En primer lugar se suprimen todos los lazos y aristas m ultiples, con lo que obtenemos un
grafo conexo. A continuacion se suprime, sucesivamente, una arista cualquiera de cada ciclo que
quede en el grafo. El teorema anterior asegura la conservacion de la conexion, luego cuando
no queden ciclos tendremos un grafo conexo acclico que sera el arbol generador buscado. La
nitud del grafo asegura la nalizacion del proceso.
119
5.7.2.1 Algoritmos de Kruskal y Prim.
Algoritmo de Kruskal 62.- Si (V, A) es un grafo conexo pesado con [V [ = n, el siguiente algo-
ritmo produce un arbol generador mnimo:
E.1: Poner el contador en i = 1 y seleccionar una arista a
1
de mnimo peso.
E.2: Para 1 i n 2 y con aristas a
1
, a
2
, ..., a
i
ya seleccionadas, se toma la arista a
i+1
de peso mnimo entre las que quedan en el grafo de forma que no cierre un ciclo con las
aristas ya seleccionadas.
E.3: Cambiar i por i + 1.
Si i < n 1, volver a E.2.
Si i = n 1, las n 1 aristas constituyen un grafo parcial acclico con n vertices que es,
por el teorema anterior, un arbol generador. Su peso es mnimo por construccion.
Ejemplo 63.- Apliquemos el algoritmo de Kruskal sobre el grafo de la gura:


1
3
3
3
4
5
2
5 5
5 5
, , ,
,
, , ,
1
, , ,
,
, , ,
1
2
, , ,
,
, , ,
1
3
3
3 2
, , ,
,
, , ,
1
3
3
3 2
, , ,
,
, , ,
1
3
3
4
2
, , ,
,
, , ,
1
3
3
4
2
5
5
, , ,
,
, , ,
1
3
3
4
2
5
Observaciones 64.- 1.- El arbol generador mnimo obtenido no es unico.
2.- Este algoritmo se extiende facilmente a grafos pesados no conexos aplicandolo a cada
componente conexa para obtener un bosque generador mnimo.
3.- Tambien se extiende a multigrafos pesados, para lo que basta empezar eliminando los lazos
y seleccionando entre las aristas m ultiples la de mnimo peso.
4.- La aplicacion del algoritmo a un (multi)grafo no pesado produce un arbol generador. Basta
denir previamente en el (multi)grafo una funcion peso cualquiera.
5.- Con este algoritmo, el arbol generador mnimo se construye seleccionando sucesivamente
aristas de peso mnimo sin cerrar ciclos. Otra version de este mismo algoritmo permite
obtener un arbol generador mnimo suprimiendo, en el grafo original, aristas de maximo
peso sin desconectar el grafo. En este caso, tambien el teorema anterior y la construccion
aseguran el resultado.
La segunda version del algoritmo de Kruskal es mas rapida que la primera si hay que
eliminar menos aristas que las que hay que ir incorporando para formar el arbol. Es decir,
siempre que [A[ < 2 [V [ 1.
Ejemplo 65.- Aplicamos la segunda version del algoritmo de Kruskal al mismo grafo que el
ejemplo anterior:


1
3
3
3
4
5
2
5 5
5 5
, , ,
,
, , ,
1
3
3
3
4
5
2
5 5
5 5
, , ,
,
, , ,
1
3
3
3
4
2
5 5
5 5
, , ,
,
, , ,
1
3
3
3
4
2
5
5 5
, , ,
,
, , ,
1
3
3
3
4
2
5 5
, , ,
,
, , ,
1
3
3
3
4
2
5
, , ,
,
, , ,
1
3
3
4
2
5
120
Algoritmo de Prim 66.- Si (V, A) es un grafo conexo pesado con [V [ = n, el siguiente algoritmo
produce un arbol generador mnimo:
E.1: Poner el contador en i = 1 y seleccionar un vertice cualquiera x
1
. Hacer V

= x
1
y
A

= .
E.2: Para 1 i n 1, sea V

= x
1
, x
2
, . . . , x
i
y A

= a
1
, a
2
, . . . , a
i1
. A nadir a A

una arista a
i
= x, y de peso mnimo entre las que conectan un vertice x de V

con un
vertice y de V V

. Hacer y = x
i+1
y a nadirlo a V

.
E.3: Cambiar i por i + 1.
Si i < n, volver a E.2.
Si i = n, el subgrafo (V

, A

) es conexo con n vertices y n1 aristas y es, por el teorema


anterior, un arbol generador. Su peso es mnimo por construccion.
Ejemplo 67.- Apliquemos el algoritmo de Prim sobre el grafo de los ejemplos anteriores, em-
pezando en el vertice etiquetado por x
1
:


1
3
3
3
4
5
2
5 5
5 5 x
1
, , ,
,
, , ,
3
, , ,
,
, , ,
1
, , ,
,
, , ,
3
3
, , ,
,
, , ,
4
, , ,
,
, , ,
2
, , ,
,
, , ,
5
5
, , ,
,
, , ,
1
3
3
4
2
5
5.8

Arboles dirigidos.

Arboles con raz.
Como ya hemos indicado, en el caso dirigido vamos a tratar digrafos acclicos cuyo grafo no
dirigido subyacente tambien sea acclico (es decir, un digrafo sera un arbol si su grafo no di-
rigido subyacente es tambien un arbol). Para evitar alusiones continuadas al grafo no dirigido
subyacente, vamos a introducir las siguientes deniciones:
Denicion 68.- Llamaremos semitrayectoria en un multidigrafo D = (V, A) a una sucesion
alternada de vertices y arcos x
1
a
1
x
2
x
p
a
p
x
p+1
tal que a
i
= (x
i
, x
i+1
) o a
i
= (x
i+1
, x
i
), para
cada i = 1, 2, . . . , p, y diremos que la semitrayectoria conecta los vertices x
1
y x
p
. Es decir, es
una semitrayectoria si es una trayectoria (no dirigida) en el multigrafo no dirigido subyacente.
Analogamente se denen semicola, semicamino, semicircuito y semiciclo.
Diremos que un multidigrafo es semiacclico si no posee semiciclos.
Denicion 69.- Un bosque dirigido es un digrafo semiacclico. A cada componente conexa de
un bosque dirigido le llamaremos arbol dirigido.
En un arbol dirigido se llaman hojas a los vertices de exgrado cero (vertices maximales) y
races a los de ingrado cero (vertices minimales). Si el arbol dirigido tiene n vertices, tanto la
suma de ingrados como la suma de exgrados es n 1. Si (x, y) es un arco se dice que x es un
padre y que y es un hijo. Si hay un camino que une x con y diremos que el vertice y es un
descendiente del vertice x y que el vertice x es un ascendiente del vertice y.
Denicion 70.- Se llama arbol con raz a un arbol dirigido con una unica raz. Si (V, A) es
un arbol con raz r y x es un vertice del arbol, llamaremos subarbol con raz x al subgrafo
inducido en el conjunto formado por el vertice x y sus descendientes.
Teorema 71.- Si (V, A) es un arbol dirigido, entonces: (V, A) es un arbol con raz tiene
un vertice con ingrado cero y todos los demas tienen ingrado uno.
121
Demostracion:
=| La raz r es el unico vertice con ingrado cero. Si hubiera un vertice x con ing(x) 2,
habra dos arcos de la forma (y, x) y (z, x). Como el arbol es conexo, hay semicaminos
que conectan r con y y r con z y, por tanto, la semitrayectoria cerrada r yxz r
contiene un semiciclo, en contra de la denicion de arbol dirigido.
=| Hay un solo vertice de ingrado cero luego es la unica raz.
Corolario 72.- En un arbol con raz, la raz r esta unida a cualquier otro vertice x ,= r por un
unico camino.
Demostracion:
Como es conexo (y nito) hay un semicamino x
1
x
2
x
3
x
p1
x
p
que conecta r = x
1
con
x = x
p
. Como ing(x
1
) = 0 entonces (x
1
, x
2
) es un arco; como ing(x
2
) = 1 entonces (x
2
, x
3
)
es un arco; y, en general, como ing(x
i
) = 1 entonces (x
i
, x
i+1
) es un arco, para 1 i p 1.
Luego el semicamino es un camino.
Este camino es unico, pues si hubiera dos entre ambos se formara un semiciclo.
Teorema 73.- Si (V, A) es un grafo dirigido, las siguientes condiciones son equivalentes:
a) (V, A) es un arbol con raz.
b) En (V, A) hay un vertice r tal que ing(r) = 0 y, para cada x ,= r, existe un unico camino
que conecta r con x.
c) (V, A) es conexo y tiene un vertice r tal que ing(r) = 0 y, para cada x ,= r, ing(x) = 1.
d) (V, A) es semiacclico y tiene un vertice r tal que ing(r) = 0 y, para cada x ,= r, ing(x) =
1.
Demostracion:
a)b) Es el corolario anterior.
b)c) Es conexo porque para todo par de vertices x, y existen caminos r x, r y y, por
tanto, el semicamino x r y conecta x con y. Por otro lado, como para cada x ,= r
hay un camino r x, se tiene que ing(x) 1. Si ing(x) > 1 hay, al menos, dos arcos
(y, x) y (z, x) con y ,= z; y como hay caminos distintos r y y r z resulta que r yx
y r zx son dos caminos distintos que conectan r con x, en contra de la hipotesis.
c)d) Si hubiera un semiciclo, dos arcos consecutivos no podran incidir en un mismo vertice,
pues este tendra ingrado mayor que uno, por lo que el semiciclo es un ciclo. Ademas,
el vertice r no esta en el ciclo, pues ing(r) = 0, pero esta conectado (hipotesis) por un
semicamino x
1
x
2
x
3
x
p1
x con el ciclo. (Ahora x
1
= r y suponemos que x es el unico
vertice del ciclo en el semicamino). Como vimos en el corolario, este semicamino es un
camino y, en consecuencia, en el vertice x incide el arco (x
p1
, x) y otro arco del ciclo,
por lo que ing(x) > 1, en contra de la hipotesis.
d)a) Seg un el teorema anterior bastara probar que el digrafo es conexo. Si el digrafo no es
conexo y x
1
es un vertice que no esta en la componente conexa del vertice r, entonces
ing(x
1
) = 1 y, por tanto, hay un arco (x
1
, x
2
). Como ing(x
2
) = 1 hay un arco (x
2
, x
3
) y
as sucesivamente. Como el digrafo es nito, en la sucesion x
1
x
2
x
3
se llega a repetir
alg un vertice y, por tanto, se tiene un semiciclo, en contra de la hipotesis.
122
Denicion 74.- Un arbol con raz es un arbol m-ario si todos sus vertices tienen exgrado
menor o igual que m (cada padre tiene a lo sumo m hijos). Si m = 2 le llamaremos arbol
binario. Un arbol con raz es un arbol m-ario regular si todos los vertices, que no sean
hojas, tienen exgrado m (cada padre tiene exactamente m hijos). Se llama altura de un arbol
con raz a la maxima longitud de sus caminos. Un arbol m-ario pleno es un arbol m-ario
regular en el que todas las hojas tienen el mismo nivel (la altura del arbol).
5.8.1 Algoritmos de b usqueda en profundidad.
Los arboles con raz se piensan como construidos desde la raz hacia abajo. Si son nitos tambien
se pueden pensar desde las hojas hacia arriba construyendo, recursivamente, subarboles cada
vez mayores.

Esta es la razon por la que los arboles con raz constituyen estructuras de datos
naturales para programas de computacion recursivos. Ademas podemos utilizar el principio
general de induccion para probar hechos sobre conceptos denidos recursivamente. De ah el
interes de las siguientes deniciones recursivas de arbol con raz y de altura de un arbol con raz.
Denicion 75.-
[B] Un unico vertice (arbol trivial) es un arbol con raz.
[R] Si T
1
= (V
1
, A
1
), . . . , T
k
= (V
k
, A
k
) son arboles con races r
1
, . . . , r
k
, si V
1
, . . . , V
k
son
disjuntos dos a dos y si r / V
1
V
k
, entonces T = (V, A), con V = r V
1
V
k
y A = (r, r
1
), . . . , (r, r
k
) A
1
A
k
, es un arbol con raz.
As pues, r es una raz con hijos r
1
, . . . , r
k
y los demas vertices tienen los mismos hijos que
antes. T
1
, . . . , T
k
son subarboles con races r
1
, . . . , r
k
del arbol con raz T .
Denicion 76.-
[B] El arbol trivial tiene altura cero.
[R] Si T esta denido como acabamos de hacer y los subarboles T
i
tienen alturas h
i
, para cada
1 i k, entonces la altura del arbol T es 1 + maxh
1
, . . . , h
k
.
Los siguientes algoritmos se utilizan para listar los vertices de un arbol con raz.
Listado en preorder 77.- Se lista la raz seguida de los subarboles de races los hijos de la
raz. En el siguiente ejemplo, al listado de la izquierda le corresponde el dibujo de la derecha:
T =T
r
=rT
v
T
s
=r(vT
u
T
w
)(sT
p
T
q
)
=rv(u)(wT
x
T
y
T
z
)s(p)(q)
=rvuw(x)(y)(z)spq
=rvuwxyzspq.
,
.
.
.
.
. .

,
Z
Z
Z
`
`
` , ,
Z
Z
Z
`
`
` , , ,
,
Z
Z
Z
`
`
` , ,
r
v
u w
x y z
s
p q
`
_
`
_
`
`
`
_ ,
Z
Z
Z
`
`
` ,
/
/
/
`
`
` , ,
/
/
/
`
`
` , , ,
,
/
/
/
`
`
` , ,
a
aa
aaa
aab
aaba
aabb
aabc
ab
aba abb
Es decir, se empieza en la raz y se gira en sentido contrario al de las agujas del reloj para
terminar en la ultima hoja de la derecha.
Este listado se llama tambien lexicograco:
a-aa-aaa-aab-aaba-aabb-aabc-ab-aba-abb.
123
Listado en postorder 78.- Se listan los subarboles de races los hijos de la raz seguidos de la
raz. Como en el ejemplo siguiente:
T =T
r
=T
v
T
s
r
=(T
u
T
w
v)(T
p
T
q
s)r
=(u)(T
x
T
y
T
z
w)v(p)(q)sr
=u(x)(y)(z)wvpqsr
=uxyzwvpqsr
,
.
.
.
.
.
.

,
Z
Z
Z
`
`
` , ,
Z
Z
Z
`
`
` , , ,
,
Z
Z
Z
`
`
` , ,
r
v
u w
x y z
s
p q
`
_
`
_
`
`
`
_
Es decir, se empieza en la raz, se gira en el sentido de las agujas del reloj para terminar en
la ultima hoja de la izquierda y, nalmente, se invierte el orden.
El siguiente algoritmo se utiliza para listar los vertices de un arbol binario regular.
Listado en inorder 79.- Se lista la raz entre el subarbol de la izquierda y el subarbol de la
derecha. En el ejemplo de la gura:
T = T
r
= T
v
rT
s
= (T
u
vT
w
)r(T
p
sT
q
)
= (u)v(T
x
wT
y
)r(p)s(T
m
qT
n
)
= uv(x)w(y)rps(m)q(n)
= uvxwyrpsmqn.
,
.
.
.
.
.
.

,
Z
Z
Z
`
`
` , ,
Z
Z
Z
`
`
` , ,
,
Z
Z
Z
`
`
` , ,
Z
Z
Z
`
`
` , ,
r
v
u w
x y
s
p q
m n
Bibliografa:
Grimaldi, Ch.R.B. (1997). Matematicas Discretas y Combinatoria, 3
a
edicion.
Ed. Addison-Wesley Iberoamericana. Captulos 11, 12 y 13.
Ross, K.A. (1990). Matematicas Discretas.
Ed. Prentice-Hall Hispanoamericana. Captulos 8 y 9.
Rosen, K.H. (1995). Discrete Mathematics and its applications; 3
a
edicion.
Ed. McGraw-Hill International. Captulos 7 y 8.
124
5.9 Problemas.
5.1 Cuantos grafos distintos se pueden formar con cuatro vertices y 3 aristas? Dibujarlos,
indicando cuales de ellos son isomorfos entre s.
5.2 Son isomorfos los siguientes grafos? Justicar la respuesta construyendo los isomorsmos
cuando corresponda.
G
1
,
,
,
, , ,
G
2
,
,
,
,
,
,
G
3
,
,
,
,
,
,
5.3 Son isomorfos los siguientes grafos?.
G
1
,
,
`
`
,
,
,
,Z
Z
,
,
G
2
,
,
`
`
,
,
,
`
`
,
,
,
5.4 Probar que en los grafos G
1
, G
2
y G
3
siguientes no son isomorfos ning un par de ellos.
,
, , ,
, ,
Z
Z
Z
`
`
`
`
`
`
`
`
`
/
/
/
/
/
/
G
1
,
, , ,
, ,
Z
Z
Z
`
`
`
`
`
`
`
`
`
/
/
/
/
/
/
G
2
,
, , ,
, ,
Z
Z
Z
`
`
`
`
`
`
`
`
`
/
/
/
G
3
,
, , ,
, ,
Z
Z
Z
`
`
`
`
`
`
`
`
`
/
/
/ /
/
/
G
4
El grafo G
4
s es isomorfo a uno de ellos: indica a cual y da el isomorsmo
5.5 Prueba que los siguientes pares de grafos son isomorfos, dando un etiquetado en uno de
los elementos de cada par y etiquetando de forma identica los vertices correspondientes
del otro elemento del par.
, , ,
, , ,
, ,
, ,
, ,
, ,
, ,
, ,
, ,
, , , ,
, , , ,
/
/
/
/
/
/
`
`
`
`
`
`
/
/
/
/
/
/
`
`
`
`
`
`
/
/
/
`
`
`
`
`
`
/
/
/
Z
Z
`
`
`
`
Z
Z
/
/
/
/
/
/
/
/
/
/
/
/
\
\
\
\
\
\
/
/
/
/
/
/
/
/
/
/
/
/
`
`
`
`
`
`
\
\
\
\
\
\
`
`
`
`
`
`
5.6 El grafo de la izquierda es una de las representaciones isomorfas del grafo de Petersen,
pero la mas conocida es una de las de la derecha. Cual de ellas?
G
2
, ,
, ,
, ,
, , ,
,
\
\
\
\
\
/
/

`
`
`
/
/
/
\
\
\
.
.
.
.

`
`
/
/
/
/
/
.
.
.
.
.
G
1
, ,
, ,
, ,
, , ,
,
\
\
\
\
\
/
/

`
`
.
.
.
.
.
.

`
`
/
/
/
/
/
.
.

/
/
, ,
,
, , ,
, ,
, ,
`
`
`
`
'
'
'
'
'
'

.
.
.
.
/
/
/
/
`
`
` .
.
.
`
`
/
/

`
`
`
`
/
/
/
/
5.7 Sea G = (V, A) un grafo simple nito. Probar que

xV
gr(x) = 2 [A[ y deducir de ello que
un grafo no puede tener un n umero impar de vertices de grado impar.
Si G es un multigrafo son tambien ciertos los resultados anteriores?
125
5.8 Etiqueta los vertices y las aristas del multigrafo de los puentes de Konigsberg y encuentra,
si existen:
a) Una trayectoria que no sea cola, una cola que no sea camino y un camino.
b) Una trayectoria cerrada que no sea circuito, un circuito que no sea ciclo y un ciclo.
c) Un subgrafo inducido conexo y otro no conexo.
d) Un subgrafo parcial conexo y acclico.
e) Un subgrafo parcial no conexo y no acclico.
5.9 Para cada uno de los grafos G
1
y G
2
del ejercicio 5.6 encontrar, al menos, tres ciclos de
longitudes distintas. Usar esto para probar que no pueden ser isomorfos.
5.10 Alguno de los dibujos siguientes puede hacerse de un solo trazo y sin repintar ninguna
arista? Como?
, ,
, ,
,
Z
Z
Z
Z
Z
`
`
`
`
`
Z
Z
Z
`
`
`
, ,
, ,
,
,
`
`
`
`
`
`
`
`
`
`
5.11 La Zona 72 de gestion de carreteras se ocupa de la red viaria entre las 6 ciudades del area.
Hay carretera entre A y C, A y E, B y C, B y D, B y F , C y D, C y E, y entre E
y D.
Dibujar un grafo para modelar esta situacion. Es suciente con esta red para asegurar la
interconexion entre todas las ciudades?
En poco tiempo se inaugurara otra carretera entre las ciudades E y F . Coincidiendo con
la entrada en servicio de esta carretera, se pondra en funcionamiento una maquina para el
control y reparacion de la red pero, dado su elevado gasto, debe planicarse su uso para
evitar, si es posible, que la maquina recorra las vas mas de una vez.
Puede elegirse una de las ciudades de manera que se cumpla el objetivo y que solo haya
que contruir un hangar para guardar la maquina? Si es posible, donde? y si no lo es,
bastara con dos hangares en ciudades distintas? Cual sera el recorrido de ser posible?
5.12 Al visitar la casa de los horrores, Pablo y David intentan imaginarse si podran pasar por
las siete habitaciones y el pasillo que las rodea cruzando cada puerta exactamente una vez.
Pueden lograr su objetivo si deben empezar desde la posicion del pasillo marcada con el
asterisco en la gura siguiente? Razonar la respuesta.

5.13 Considerar los grafos G


1
y G
2
del ejercicio 5.6. Admiten caminos hamiltonianos?, ad-
miten ciclos hamiltonianos?
126
5.14 Sea M la matriz de adyacencia de un grafo G etiquetado con E = x
1
, x
2
, x
3
, x
4
, x
5
, x
6

M =
_
_
_
_
_
_
_
_
_
0 1 1 0 0 1
1 0 1 0 0 1
1 1 0 1 1 0
0 0 1 0 0 1
0 0 1 0 0 1
1 1 0 1 1 0
_
_
_
_
_
_
_
_
_
a) Utilizar la matriz para encontrar los vertices de mayor y menor grado.
Admite cola euleriana o circuito euleriano?
b) Encuentra, haciendo el menor n umero de operaciones posibles en la matriz, el n umero
de trayectorias de longitud 2 de x
2
a x
3
y el n umero de trayectorias de longitud 3
de x
2
a x
6
pasando por x
3
.
c) Denimos sobre el grafo la funcion peso siguiente w(x
i
, x
j
) = i +j . Dar la matriz
de pesos.
d) Dar una representacion graca del grafo.
5.15 Construir la matriz de adyacencia del grafo de la derecha.
Usar dicha matriz para responder a las siguientes pregun-
tas:
a) Entre dos vertices cualesquiera existe siempre una
trayectoria de longitud 2? y de longitud 3?
b) Cuantas trayectorias de longitud 3 hay del vertice
x
1
al x
3
? y de x
1
a x
5
? Descrbelas con el grafo.
,
x
4
,
x
5
,
x
6
,
x
1
,
x
2
,
x
3
`
`
`
`
`
`
`
`
`
`
`
`
c) Denimos sobre el grafo la funcion peso: w(x
i
, x
j
) = 2 mni, j +maxi, j. Dar
la matriz de pesos.
d) Usar el algoritmo de Dijkstra para obtener los pesos mnimos del vertice x
6
a los
demas vertices.
5.16 Utilizar el algoritmo de Dijkstra para encontrar, en cada uno de los grafos, los pesos
mnimos desde el vertice a a los demas.
,/
/
/
/
/
/
Z
Z
Z
, `
`
`
,/
/
/
/
/
/
,
,
`
`
`
,
Z
Z
Z
a
4
2
3
3
4
1
5
4
1
6
3
,.
.
.
,/
/
/
, `
`
`
,

,
.
.
.,
/
/
/,
`
`
`,

,Z
Z
Z
`
`
`
Z
Z
Z
`
`
`
a
1
2
4
2
1
5 6
3
3
1
4
5
4 4
2
2
Para el primer grafo, encuentra la matriz de pesos mnimos mediante el algoritmo de
Warshall.
5.17 Una empresa de autobuses tiene que ir de la ciudad A a la ciudad D recogiendo viajeros
en la ciudad C. Las distancias en kilometros entre las cinco ciudades A, B, C, D, y E por
127
las que puede pasar se dan en la tabla
A B C D E
A 0 20 80 50 30
B 20 0 60 70
C 80 60 0 90 40
D 50 70 90 0 10
E 30 40 10 0
Que recorrido le conviene realizar a la empresa?.
5.18 Una empresa desea abrir sucursales en cinco ciudades A, B, C, D y E. Una de estas
sucursales actuara como central y sera necesario el envo de camiones de la central al resto.
Cada camion solo podra abastecer a una de las sucursales. Las distancias entre ciudades
en kilometros son: 300 entre A y B, 500 entre A y D, 200 entre B y C, 600 entre B
y D, 400 entre C y E y 100 entre E y D.
a) En que ciudad interesa montar la central?
b) La empresa quiere inspeccionar las carreteras recorriendo la menor distancia posible.
Que recorrido debera efectuar? Razonar la respuesta.
c) Es posible visitar las cinco sucursales sin pasar por una misma ciudad dos veces?
Razonar la respuesta.
d) Esta previsto construir una carretera de 250 kilometros que una las ciudades A y
E. Que recorrido propondras entonces para los apartados b) y c)? Razonar la
respuesta.
5.19 a) Construir todos los grafos dirigidos con dos vertices.
b) Construir todos los grafos dirigidos no etiquetados con tres vertices.
5.20 Agrupar por isomorsmo los digrafos con 3 vertices y 2 arcos que aparecen en la gura 5.2
de la pagina 112.
5.21 Indicar cuales de los siguientes digrafos son isomorfos y cuales no, indicando el isomorsmo
cuando haya lugar.
, _ /
//
,
`
``,/
/
/
,
,
`
`
`
,
`
`
`*
Z
Z
Z
, `
`
`
,
,/
/
/
_
,
`
`
`
,
.
.
.,
,Z
Z
Z
-
-
-
,|
|
|
|
|
|*
,
, \
\
\
\
\
\
_
,
'
,
.
.
.,
, _
`
`
`
``
5.22 Para el digrafo de la gura se pide:
a) El ingrado, el exgrado y el grado de cada vertice.
b) Los minimales y maximales.
c) Trayectorias que vayan desde x
4
a cada uno de los otros
vertices. Es conexo?
d) Una trayectoria que no sea cola, una cola que no sea camino
y un camino.
e) Hallar su matriz de adyacencia y usarla para probar que no
es acclico. Hay ciclos de longitud 3 y 4?
,
, ,
,
x
3
x
4
x
1
x
2
`
`
``
Z
Z
Z
_
Z
Z
Z
`
`
`` '
128
5.23 Son isomorfos los multidigrafos de matrices M
1
y M
2
?
M
1
=
_
_
_
_
_
_
_
_
_
0 0 1 0 0 0
0 0 0 1 1 0
0 1 0 0 1 0
1 0 0 0 1 0
0 0 0 0 0 1
1 1 0 0 0 0
_
_
_
_
_
_
_
_
_
M
2
=
_
_
_
_
_
_
_
_
_
0 1 0 0 0 0
0 0 1 0 0 1
0 0 0 0 0 1
0 0 1 0 1 0
1 0 0 1 0 0
1 0 0 1 0 0
_
_
_
_
_
_
_
_
_
5.24 Sea M =
_
_
_
_
_
_
_
_
_
0 1 0 0 0 1
0 0 1 1 0 1
0 0 0 1 1 0
0 0 0 0 0 0
0 0 1 1 0 0
0 0 0 1 1 0
_
_
_
_
_
_
_
_
_
la matriz de un grafo dirigido D.
Utilizar solo matrices para justicar las respuestas a las siguientes preguntas:
a) Determinar los pozos, las fuentes y los vertices aislados de D, si los hay.
b) Hallar el n umero de trayectorias de longitud 3 del vertice 1 al vertice 4 de D.
c) Construir la matriz de adyacencia del grafo no dirigido G
D
subyacente a D. Hay
en G
D
una cola euleriana? Y un circuito euleriano?
5.25 Sea W la matriz de pesos de un grafo dirigido con
vertices V = x
1
, x
2
, . . . , x
7
. Obtener a partir de
ella:
a) Las fuentes, pozos, exgrado maximo, los pun-
tos de ingrado maximo y las componentes
conexas,
b) un ciclo de longitud 3 partiendo de x
2
. Hay
alg un otro?,
W =
_
_
_
_
_
_
_
_
_
_
4 2
2
2 8 8 1
1

3 4 7
3
_
_
_
_
_
_
_
_
_
_
c) el n umero de trayectorias de longitud 2 que parten de x
3
,
d) el n umero de trayectorias de longitud 3 que conectan x
3
con x
7
.
Aplicar el algoritmo de Dijkstra para encontrar los pesos mnimos desde x
3
.
5.26 La siguiente gura corresponde a un plano de calles con las direcciones de circulacion y el
tiempo en minutos que se necesita para recorrer cada tramo.
_
_
_
'
' '
_
_
_
_
B
5
D 6 F
3 3 2
A 7 C 5 E
Si un taller sito en la plaza B tiene que hacer una entrega en la plaza F , calcular el tiempo
mnimo que necesita el repartidor para estar de nuevo disponible en el taller. Cual es el
recorrido correspondiente?
129
5.27 Para cada uno de los siguientes digrafos de 4 vertices, indica si son simetricos, anti-
simetricos, transitivos y/o acclicos.
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
'
Z
Z
Z
Z
_
_
' '
Z
Z
Z
Z
_
`
`
`
``
_
'
'
_
_
'
_
_
_
_
'
'
'
'
_
_
_
_
_
_
'
'
'
'
5.28 Puede darse un etiquetado naturalmente ordenado al di-
grafo de la derecha? Justicar en caso negativo y construirlo
en caso positivo.
Asignar a cada arco el peso w(v
i
, v
j
) = [i j[ y usar el
algoritmo de Dijkstra para encontrar los pesos mnimos del
vertice v
6
a los demas vertices.
,
,
, ,
,
,
v
1
v
2
v
3
v
5
v
4
v
6
'
Z
Z
Z
_

`
`
`
.
.
.
.
.
.

`
`
``
_
.
.
.
.
.
.
Z
Z
Z
'
5.29 Encontrar un etiquetado naturalmente ordenado para
el digrafo representado a la derecha.
,
,
,
,
,
,
,
, C
F
A
H
D
G
B
E _
Z
Z
Z
Z
Z
Z
'
_

_ ~
~
~
~
~
~
~
~
~
Z
Z
Z
'
`
`
`
Z
Z
Z
5.30 Sea (V, A) el digrafo acclico dado por la gura siguiente:
a) Dar su clasicacion en niveles y dibu-
jarlo por niveles.
b) Dar un etiquetado naturalmente or-
denado por niveles.
c) Construir una cola euleriana en el
grafo no dirigido subyacente.
,
, ,
,
, , ,
, , ,
, _

' '
_ _

'
`
`
`

'
Z
Z
Z
_
`
`
``
_
' '
Z
Z
Z
_
`
`
`
Z
Z
Z
4
2 3
5
6 1
10
11
7 9
8
5.31 Para el digrafo del ejercicio 5.29, dar su clasicacion en niveles, dibujarlo por niveles y
dotarlo de un etiquetado naturalmente ordenado por niveles.
5.32 a) Probar que la suma de los grados de los n vertices de un arbol es 2n 2.
b) Hallar el n umero de vertices y de aristas de un arbol que tiene tres vertices de grado
2, dos de grado 3, uno de grado 4 y los restantes de grado 1.
5.33 Probar que hay un arbol con seis vertices de grado 1, uno de grado 2, uno de grado 3 y
uno de grado 5.
5.34 Utilizar el algoritmo de Kruskal para encontrar un arbol generador mnimo para cada grafo
de la gura. Hallar sus pesos.
,/
/
/
/
/
/
Z
Z
Z
, `
`
`
,/
/
/
/
/
/
,
,
`
`
`
,
Z
Z
Z
x
4
2
3
3
4
1
5
4
1
6
3
,.
.
.
,/
/
/
, `
`
`
,

,
.
.
.,
/
/
/,
`
`
`,

,Z
Z
Z
`
`
`
Z
Z
Z
`
`
`
x
1
2
4
2
1
5 6
3
3
1
4
5
4 4
2
2
130
5.35 Utilizar el algoritmo de Prim para encontrar un arbol generador mnimo para cada grafo
de la gura anterior, empezando con el vertice etiquetado con x.
5.36 La tabla expresa las longitudes en decenas de kilometros de varias carreteras conectando
seis ciudades gallegas C, V, L, O, S y P . Representar mediante un grafo no dirigido el
mapa de carreteras y dibujar un arbol generador mnimo.
C
C S
S 7 P
P 6 V
V 5 L
L 9 10 O
O 11 11 10
5.37 Telefonica tendio demasiadas lneas telefonicas entre un grupo de casas. En el grafo de la
gura, los vertices son las casas y las aristas las lneas telefonicas. El peso de cada arista
representa la longitud de la lnea. La compa na desea quitar las lneas sobrantes, de forma
que dos casas cualesquiera sigan conectadas, y la longitud total del tendido sea la mnima
posible. Que lneas hay que quitar? Dib ujese el grafo resultante.



`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
Z
Z
Z
Z
Z
Z
Z
Z
Z
Z
Z
Z
Z
Z
Z
Z
Z
Z
Z
Z
Z
Z
Z
Z
a b c d e
f
g
h i j
k l m n o
10 7 10 4
3 8 9 6 8
9 12 13 5
10 3 5 11
5 13 4 12 12
11 7 10 3
4 9 8 11
5.38 Para el arbol de la gura, dar el n umero de padres, el n umero
de hijos y el n umero de hojas. A nadir el mnimo n umero de
arcos para obtener un arbol binario regular.
,
Z
Z
Z
`
`
` ,
/
/
/
`
`
` , ,
/
/
/
`
`
`, ,
/
/
/
`
`
` , ,
,
,
,
1
2 3
4 5 6
7 8
9
11
10
5.39 Dibujar recorridos gracos que representen los listados de los vertices en PREORDER y
POSTORDER de los arboles de la gura.
,
Z
Z
Z
`
`
` ,
/
/
/
`
`
`
,
/
/
/
`
`
` ,
|
|
|
\
\
\ , ,
, ,
|
|
|
\
\
\ , ,
,
r
x s
w
v y
z u
t p
q
,
Z
Z
Z
`
`
` ,
/
/
/
`
`
`
,
/
/
/
`
`
` ,
|
|
|
\
\
\ , ,
,
|
|
|
\
\
\ , ,
, ,
r
w s
v
x y
z p
t u
q
,
Z
Z
Z
`
`
` ,
/
/
/
`
`
`
,
/
/
/
`
`
` ,
/
/
/
`
`
` , , ,
, , , ,
r
t u
x
v y z
w p q s
131
5.40 Dar un listado en INORDER de los vertices del arbol etiquetado de la gura.
,
Z
Z
Z
`
`
` ,
/
/
/
`
`
`
,
/
/
/
`
`
` ,
|
|
|
\
\
\ , ,
, , ,
|
|
|
\
\
\ , ,
|
|
|
\
\
\ , ,
0 1
00
000 001
01
10
110 111
11
1100 1101
5.41 a) Listar en PREORDER y POSTORDER los vertices del arbol de la gura.
,
.
.
.
.
.
.

,
,
/
/
/
`
`
` , ,
,
Z
Z
Z
/
/
/
`
`
`
`
`
` , , , ,
,
/
/
/
`
`
` , , ,
/
/
/
`
`
` , ,
1
2 3 4
5
13 14
6 7 8 9
10 11
12
15 16
b) Eliminar el menor n umero posible de vertices para construir un subgrafo de T que
sea un arbol binario. A partir de este, a nadiendo el menor n umero posible de aristas,
construir un arbol binario regular y listar sus vertices en INORDER.
132

You might also like