Vous êtes sur la page 1sur 41

TEORIA DE GRAFOS

CONCEPTOS PREVIOS
Una grfica (o grfica no dirigida) G consiste en un conjunto V de vrtices (o
nodos) y un conjunto E de aristas (o arcos) tal que cada arista e E se asocia
con un par no ordenado de vrtices.
Si existe una arista nica e asociada con los vrtices u y w, se escribe e = (v,w)
o e = (w, v).
Una grfica dirigida (o digrfica) G consiste en un conjunto V de vrtices (o
nodos) y un conjunto E de aristas (o arcos) tales que cada arista e E est
asociada con un par ordenado de vrtices.
Se dice que una arista e en una grfica (no dirigida o dirigida) que se asocia
con el par de vrtices v y w es incidente sobre v y w, y se dice que v y w son
incidentes sobre e y son vrtices adyacentes.
Si dos aristas se asocian al mismo para de vrtices, entonces se llaman
aristas paralelas , una arista incidente se llama lazo y un vrtice que no incide
en ningn arista se llama vrtice aislado.
Una grafica sin lazos ni aristas paralelas se llama grafica simple.
CONCEPTOS PREVIOS
Grafica Ponderada
Una grfica con nmeros en las aristas se llama grfica ponderada, si la arista e
se etiqueta k, se dice que el peso de la arista e es k
En una grfica ponderada, la longitud de una ruta es la suma de los pesos de las
aristas en la ruta
Grafica de similitud
Una grafica de similitud G se construye como sigue. Los vrtices corresponden a los
programas. Un vrtice se denota como (p1,p2,p3), donde pi es el valor de la propiedad
i. Se define funcin de disimilitud S como sigue. Para cada par de vrtices v=(p1,p2,p3)
y w=(q1,q2,q3) se establece S(v,w) = |p1-q1|+|p2-q2|+|p3-q3|
Si v y w son vrtices correspondientes a dos programas, s(v, w) es una medida de qu tan
dismiles son los programas. Un valor grande de s(v, w) indica disimilitud, mientras que
un valor pequeo indica similitud.
Grafica bipartita
La grfica completa sobre n vrtices, denotada por Kn, es la
grfica simple con n vrtices en la que hay una arista entre
cada par de vrtices distintos.
Una grfica G = (V, E) es bipartita si existen subconjuntos
V1 y V2 (cualquiera de los dos posiblemente vaco) de V
tales que V1 n V2=, V1 V2 = V, y cada arista en E es
incidente sobre un vrtice en V1 y un vrtice en V2
La grfica bipartita completa sobre m y n vrtices,
denotada por Km,n, es la grfica simple donde el conjunto
de vrtices tiene una particin en V1 con m vrtices y V2
con n vrtices y donde el conjunto de aristas consiste en
todas las aristas de la forma (v1, v2) con v1 V1 yv2 V2
TRAYECTORIAS Y CICLOS
Sean v0 y vn vrtices en una grfica. Una trayectoria de v0 a v de
longitud n es una sucesin alternante de n+ 1 vrtices y n aristas que
comienza en el vrtice vn y termina en el vrtice vn, (v0, e1, v12, e2,
v2 hasta vn-1, en, vn), donde la arista ei es incidente sobre los vrtices
vi-1y vi para i = 1, . . . , n.
Una grfica G es conexa si dados cualesquiera dos vrtices v y w en G,
existe una trayectoria de v a w.
Sea G = (V, E) una grfica. (V, E) es una subgrfica de G si
a) V V y E E.
b) Para toda arista e E, si e incide en v y w, entonces
v, w V.
Sea G una grfica y sea v un vrtice en G. La subgrfica G de G que
consiste en todas las aristas y vrtices de G que estn contenidos en
alguna trayectoria que comienza en v se llama componente de G que
contiene a v.
TRAYECTORIAS Y CICLOS
Sean v y w vrtices en una grfica G.
Una trayectoria simple de v a w es una ruta de v a w sin vrtices repetidos.
Un ciclo (o circuito) es una trayectoria de longitud diferente de cero de v a v sin aristas
repetidas.
Un ciclo simple es un ciclo de v a v en el que no hay vrtices repetidos, excepto por el
inicio y el fin que son iguales a v.
CICLO DE EULER
En honor a Euler, un ciclo en una grfica G que incluye todas las aristas y todos los vrtices
de G se llama ciclo de Euler
El grado de un vrtice v, d(v), es el nmero de aristas que inciden en v.
Si una grfica G tiene un ciclo de Euler, entonces G es conexa y todo vrtice tiene grado par.
Si G es una grfica conexa y cada vrtice tiene grado par, entonces G tiene un ciclo de Euler
Si G es una grfica con m aristas y vrtices (v1, v2, ,vn), entonces =1 = 2. En
particular, la suma de los grados de todos los vrtices en una grafica es par.
En una grfica, existe un nmero par de vrtices de grado impar. Una grfica tiene una
trayectoria sin aristas repetidas de v a w (v w) que contiene todas las aristas y vrtices si y
slo si es conexa y v y w son los nicos vrtices que tienen grado impar.
Si una grfica G contiene un ciclo de v a v, G contiene un ciclo simple de v a v.
CICLO DE HAMILTON
En honor a Hamilton, un ciclo en la grfica G que contiene cada vrtice en G justo una vez,
excepto por el vrtice inicial y final que aparece dos veces, recibe el nombre de ciclo
hamiltoniano.
El problema del agente viajero se relaciona con el problema de encontrar un ciclo
hamiltoniano en una grfica. El problema es: Dada una grfica ponderada G, encuentre
en G un ciclo de Hamilton con longitud mnima.
ALGORITMO DE LA RUTA MAS CORTA

Sea w(i, j) el peso de la arista (i, j). En las


grficas ponderadas con frecuencia se
desea encontrar la ruta ms corta (es
decir, una trayectoria que tiene la
longitud mnima) entre dos vrtices
dados
G denota una grfica conexa ponderada.
Se supone que los pesos son nmeros
positivos y que se quiere encontrar la
ruta ms corta del vrtice a al vrtice z.
La suposicin de que G es conexa se
puede excluir.
Ejemplo de Algoritmo de Dijkstra
Para una entrada que consiste en una grfica ponderada de n vrtices, simple y conexa, el
algoritmo de Dijkstra tiene un tiempo de corrida en el peor caso de O (n2).
Demostracin Se considera el tiempo gastado en ciclos, que proporciona una cota
superior en el tiempo total. La lnea 4 se ejecuta O(n) veces. Dentro del ciclo while, la
lnea 9 toma un tiempo O(n) [se podra encontrar L(v) mnimo examinando todos los
vrtices en T]. El cuerpo del ciclo for (lnea 12) toma un tiempo O(n). Como las lneas 9
y 12 estn anidadas en el ciclo while que toma un tiempo O(n), el tiempo total para las
lneas 9 y 12 es O(n2). Entonces el algoritmo de Dijkstra corre en un tiempo O(n2).
De hecho, para una seleccin adecuada de z, el tiempo es (n2) para Kn, la grfica
completa sobre n vrtices, porque cada vrtice es adyacente a los otros. Entonces el
tiempo de corrida en el peor caso es O(n2).
Representacin de graficas
Matriz de Adyacencia
Para obtener la matriz de adyacencia de esta grfica, primero se selecciona un orden de
los vrtices, por ejemplo, a, b, c, d, e. Despus se etiquetan los renglones y columnas de
una matriz con los vrtices ordenados. El elemento en esta matriz en el rengln i y la
columna j, i j, es el nmero de aristas incidentes en i y j. Si i = j, el elemento es dos veces el
nmero de ciclos que inciden en i.
Observe que es posible obtener el grado de un vrtice v en una grfica G sumando el
rengln v o la columna v en la matriz de adyacencia de G.
Representacin de graficas
Si A es la matriz de adyacencia de una grfica simple, el elemento ij de An es igual al
nmero de trayectorias de longitud n del vrtice i al vrtice j, n = 1, 2, . . . .
Representacin de graficas
Matriz de Incidencia
Para obtener la matriz de incidencia de la grfica, se etiquetan los renglones con los
vrtices y las columnas con las aristas (en algn orden arbitrario). El elemento en el
rengln v y la columna e es 1 si e es incidente en v, y 0 de otra manera.
Se entiende que una columna como e7 representa un lazo.
Observe que en una grfica sin lazos cada columna tiene dos nmeros 1 y que la
suma de un rengln da el grado del vrtice identificado con ese rengln.
ISOMORFISMO DE GRAFICAS

Las grficas G1y G2 son isomorfas si existe una funcin f uno a uno y sobre de los
vrtices de G1 a los vrtices de G2 y una funcin g uno a uno y sobre de las aristas de
G1 a las aristas de G2, de manera que una arista e es incidente en v y w en G1 si y slo
si la arista g(e) es incidente en f(v) y f(w) en G2. El par de funciones f y g reciben el
nombre de isomorfismo de G1 en G2.
ISOMOFISMO DE GRAFICAS

TEOREMA: Las grficas G1 y G2 son isomorfas si y slo si, para algn orden de sus
vrtices, sus matrices de adyacencia son iguales.
COROLARIO: Sean G1y G2 grficas simples. Las siguientes son equivalentes:
a) G1 y G2 son isomorfas.
b) Existe una funcin f uno a uno y sobre del conjunto de vrtices de G1 al conjunto de
vrtices de G2 que satisface lo siguiente: los vrtices v y w son adyacentes en G1 si y slo si
los vrtices f (v) y f (w) son adyacentes en G2
GRAFICAS PLANAS
Una grfica es plana si se puede dibujar en el plano sin que sus aristas se crucen.
Si una grfica G tiene un vrtice v de grado 2 y aristas (v, v1) y (v, v2) con v1v2, se
dice que las aristas (v,v1) y (v, v2) estn en serie. La reduccin de una serie consiste en
eliminar el vrtice v de la grfica G y sustituir las aristas (v, v1) y (v, v2) por la arista
(v1, v2). Se dice que la grfica G que resulta se obtiene de G al reducir una serie. Por
convencin, se dice que G se puede obtener a partir de s misma mediante una
reduccin de serie.
Las grficas G1y G2 son un homomorfismo si G1 y G2 se pueden reducir a grficas
isomorfas mediante una secuencia de reducciones de serie.
Teorema de Kuratowski Una grfica G es plana si y slo si G no contiene una
subgrfica homomorfa a K5 o K3,3
Frmula de Euler para grficas Si G es una grfica plana conexa con e aristas, v
vrtices y f caras, entonces f = e - v + 2
TEORIA DE ARBOLES
CONCEPTOS PREVIOS

Un rbol T (libre) es una grfica simple que satisface lo siguiente: si v y w son vrtices en
T, existe una trayectoria simple nica de v a w. Un rbol con raz es un rbol en el que un
vrtice especfico se designa como raz.
El nivel de un vrtice v es la longitud de la trayectoria simple de la raz a v. La
altura de un rbol con raz es el nmero mximo de nivel que ocurre.
CODIGO HUFFMAN

Presentamos un algoritmo que toma como datos de entrada las frecuencias (esto es,
las probabilidades de aparicin) de los smbolos de una cadena y devuelve un cdigo
instantneo que codifica la cadena utilizando la menor cantidad de bits, de entre
todos los posibles cdigos instantneos binarios para este conjunto ele smbolos.
La codificacin de Huffman es un algoritmo esencial en la compresin de datos
TERMINOLOGIA Y CARACTERIZACION DE ARBOLES
Sea T un rbol con raz v0. Suponga que x, y y z son vrtices en T y que (v0, v1, . . . , vn) es una
trayectoria simple en T. Entonces
a) vn-1 es el padre de vn.
b) v0, . . . , vn-1 son ancestros de vn.
c) vn es un hijo de vn-1.
d) Si x es un ancestro de y, y es un descendiente de x.
e) Si x y y son hijos de z, x y y son hermanos.
f) Si x no tiene hijos, x es un vrtice terminal (o una hoja)
g) Si x no es un vrtice terminal, x es un vrtice interno (o una rama).
h) El subrbol de T con raz en x es la grfica con el conjunto de vrtices V y el conjunto de aristas E, donde
V es x junto con los descendientes de x y E = {e|e es una arista en una trayectoria simple de x a algn
vrtice en V}.
TERMINOLOGIA Y CARACTERIZACION DE ARBOLES

En el rbol con raz de la figura,


a) El padre de Eros es Afrodita.
b) Los ancestros de Hermes son Zeus, Cronos y Urano.
c) Los hijos de Zeus son Apolo, Atenea, Hermes y Heracles.
d) Los descendientes de Cronos son Zeus, Poseidn, Hades,
Ares, Apolo, Atenea, Hermes y Heracles.
e) Afrodita y Prometeo son hermanos.
f) Los vrtices terminales son Eros, Apolo, Atenea, Hermes,
Heracles, Poseidn, Hades, Ares, Atlas y Prometeo.
g) Los vrtices internos son Urano, Afrodita, Cronos y Zeus.
h) El subrbol con raz en Cronos se ilustra en la figura.
TERMINOLOGIA Y CARACTERIZACION DE ARBOLES

TEOREMA: SeaT una grfica con n vrtices. Las siguientes son equivalentes.
a)T es un rbol.
b)T es conexa y acclica.
c)T es conexa y tiene n - 1 aristas.
d)T es acclica y tiene n - 1 aristas.
Un rbol T es un rbol de expansin de una grfica G si T es una subgrfica de G
que contiene todos los vrtices de G.
TEOREMA: Una grfica G tiene un rbol de expansin si y slo si G es conexa.
ARBOL DE EXPANSION

Un rbol T es un rbol de expansin de una grfica G si T es una subgrfica de G


que contiene todos los vrtices de G.
TEOREMA: Una grfica G tiene un rbol de expansin si y slo si G es conexa.
ALGORITMO: Bsqueda a lo ancho de un rbol
de expansin
ALGORITMO: Bsqueda a profundidad de un
rbol de expansin
ALGORITMO: Problema de las 4 reinas
ARBOL DE EXPANSION MINIMA

Sea G una grfica ponderada. Un rbol de expansin mnima de G es un rbol de


expansin de G con peso mnimo.
El rbol T mostrado en la figura es un rbol de expansin para la grfica G de la
El peso de T es 20. Este rbol no es un rbol de expansin mnima, ya que el
rbol de expansin T mostrado en la figura tiene peso 12. Se ver ms adelante
queT es un rbol de expansin mnima para G.
ALGORITMO: DE PRIM
ARBOL BINARIOS
Un rbol binario es un rbol con raz en el que cada vrtice tiene ningn hijo, un hijo o dos
hijos. Si el vrtice tiene un hijo se designa como un hijo izquierdo o como un hijo
derecho (pero no ambos). Si un vrtice tiene dos hijos, un hijo se designa como hijo
izquierdo y el otro como hijo derecho.
TEOREMA: Si T es un rbol binario completo con i vrtices internos, entonces T tiene i + 1
vrtices terminales y 2i+ 1 vrtices en total.
TEOREMA: Si un rbol binario de altura h tiene t vrtices terminales, entonces
log 2
ALGORITMO: Construccin de un rbol de
bsqueda binaria
RECORRIDO DE ARBOLES
La bsqueda a lo ancho y la bsqueda a profundidad proporcionan maneras de
caminar por un rbol, es decir, de recorrerlo en forma sistemtica de modo
que se visite cada vrtice exactamente una vez. En esta parte se consideran tres
mtodos adicionales para recorrer rboles. Estos recorridos se definen de
manera recursiva.
ALGORTIMO: Recorrido preorden
RECORRIDO DE ARBOLES
Arboles de decisiones y tiempo mnimo para
ordenar
Isomorfismo de arboles
TEOREMA: Hay tres rboles isomorfos con cinco vrtices.

Sea T1un rbol con raz r1y sea T2un rbol con raz r2. Los rboles con raz T1 y
T2 son isomorfos si existe una funcin f uno a uno y sobre del conjunto de
vrtices de T1 al conjunto de vrtices de T2 que satisface lo siguiente:
a) Los vrtices vi y vj son adyacentes en T1 si y slo si los vrtices f (vi) y f (vj) son
adyacentes en T2.
b) f (r1) = r2.
La funcin f recibe el nombre de isomorfismo
Isomorfismo de arboles
Arboles en juegos
TEOREMA: Hay tres rboles isomorfos con cinco vrtices.

Sea T1un rbol con raz r1y sea T2un rbol con raz r2. Los rboles con raz T1 y
T2 son isomorfos si existe una funcin f uno a uno y sobre del conjunto de
vrtices de T1 al conjunto de vrtices de T2 que satisface lo siguiente:
a) Los vrtices vi y vj son adyacentes en T1 si y slo si los vrtices f (vi) y f (vj) son
adyacentes en T2.
b) f (r1) = r2.
La funcin f recibe el nombre de isomorfismo

Vous aimerez peut-être aussi