You are on page 1of 13

UNIVERSIDAD POLITCNICA DE

TULANCINGO
MATEMTICA DISCRETA
ARBOLES Y GRAFOS
ALUMNO
ERNESTO VARGAS CANALES
PROFESOR
GUSTAVO ARTURO MONTAO JIMNEZ


INTRODUCCIN
Los rboles corresponden a una de las subclases de grafos de uso ms amplio,
particularmente en computacin.
Los grafos se pueden clasificar en dos grupos: dirigidos y no dirigidos. Los arboles
forman parte de los no dirigidos.
Sirven para organizar y relacionar datos en una base de datos, por ejemplo. Esto
permite realizar operaciones de manera eficiente. Por ejemplo, un rbol de
definicin jerrquica se utiliza para configurar una base de datos para los registros
de libros existentes en diversas bibliotecas.
Otro ejemplo de la utilizacin de rboles son los diccionarios. A partir de una
palabra, se realiza una bsqueda en el rbol para saber si est incluida en el
conjunto, y si existe, se obtienen sus datos asociados (por ejemplo, si es un verbo,
un sustantivo, un artculo, etc.)
Desafortunadamente no existe una terminologa estandarizada en la teora de los
grafos, por lo tanto es oportuno aclarar que las presentes definiciones pueden variar
ligeramente entre diferentes publicaciones de estructura de datos y de teora de
grafos, pero en general se puede decir que un grafo como indica su nombre lo indica
es la representacin (para nuestro caso) grfica de los datos de una situacin
particular, ejemplo:

Los datos contienen, en algunos casos, relaciones entre ellos que no es
necesariamente jerrquica. Por ejemplo, supongamos que unas lneas areas
realizan vuelos entre las ciudades conectadas por lneas como se ve en la figura
anterior (ms adelante se presentaran grafos con estructuras de datos); la
estructura de datos que refleja esta relacin recibe el nombre de grafo.
Se suelen usar muchos nombres al referirnos a los elementos de una estructura de
datos. Algunos de ellos son elemento, tem, asociacin de tems, registro,
nodo y objeto. El nombre que se utiliza depende del tipo de estructura, el contexto
en que usamos esa estructura y quien la utiliza.
En la mayora de los textos de estructura de datos se utiliza el termino registro al
hacer referencia a archivos y nodo cuando se usan listas enlazadas, arboles y
grafos.
Tambin un grafo es una terna G = (V,A,j ), en donde V y A son conjuntos finitos, y
j es una aplicacin que hace corresponder a cada elemento de A un par de
elementos de V. Los elementos de V y de A se llaman, respectivamente, "vrtices"
y "aristas" de G, y j asocia entonces a cada arista con sus dos vrtices.
Esta definicin da lugar a una representacin grfica, en donde cada vrtice es un
punto del plano, y cada arista es una lnea que une a sus dos vrtices.

Si el dibujo puede efectuarse sin que haya superposicin de lneas, se dice que G
es un grafo plano. Por ejemplo, el siguiente es un grafo plano: puesto que es
equivalente a este otro:

Representacin de un grafo
Existen dos formas de mantener un grafo G en la memoria de una computadora,
una se llama Representacin secuencial de G, la cual se basa en la matriz de
adyacencia A; la otra forma, es la llamada Representacin enlazada de G y se basa
en listas enlazadas de vecinos. Independientemente de la forma en que se
mantenga un grafo G en la memoria de una computadora, el grafo G normalmente
se introduce en la computadora por su definicin formal: Un conjunto de nodos y un
conjunto de aristas
Representacin secuencial de un grafo


Arboles:

Un rbol es un grafo simple en el cual existe un nico camino entre cada par de
vrtices.

Sea G =(V,A) un grafo no dirigido. G se denomina ARBOL, si es conexo y no
contiene ciclos.

Un rbol con raz, es un rbol que tiene un vrtice particular designado como raz.

Teorema:

Si a, b son vrtices de un rbol R (V,A), entonces hay un camino nico que conecta
estos vrtices.

Teorema:

En cualquier rbol R= (V,A), |V| = |A| + 1.

Teorema:

Para cualquier rbol R = (V,A), si |A| >= 2, entonces R tiene al menos dos vrtices
colgantes.

Teorema:

Sea G un grafo simple con v vrtices, entonces se puede decir:

G es un rbol.

G es conexo y no contiene circuitos.

G es conexo y tiene (n-1) lados.

G no contiene circuitos y tiene (n-1) lados.

Arboles con Raz

Sea G un grafo dirigido, se denomina rbol dirigido si el grafo no dirigido asociado
con G es un rbol. Cuando G es un rbol dirigido, se denomina rbol con raz si
hay un nico vrtice r, la raz.

Sea G un grafo con raz V0. Supngase que x, y, z son vrtices en G y que (v0, v1,
..., vn), es un camino en G.

V(n-1) es el padre de v(n).

V0, v1, ..., v(n-1) son los antepasados de v(n).

V(n) es el hijo de v(n-1).

Si x es un antepasado de y, entonces y es un descendiente de x.

Si x e y son hijos de z entonces x e y son hermanos.

Si x no tiene hijos entonces x es un vrtice terminal.

Si x no es un vrtice terminal, entonces x es un vrtice interno.

El subgrafo de G que consiste en x y todos sus descendientes, con x como raz,
es el subarbol de G que tiene a x como raz.

Sea R= (V,A) un rbol con raz r. Si R no tiene otros vrtices, entonces la raz misma
constituye el recorrido en orden previo, simtrico y posterior de R. Si |V| > 1, sean
R1, R2, R3, ...., Rk los subarboles de R segn se va de izquierda a derecha.

El recorrido de orden previo de R comienza en r y despus pasa por los vrtices de
R1 en orden previo, a continuacin por los vrtices de R2 en orden previo, y as
sucesivamente hasta que se pasa por los vrtices de Rk en orden previo.

El recorrido en orden simtrico de R primero, se pasa por los vrtices de R1 en
orden simtrico, despus por la raz r y a continuacin por los vrtices de los
subarboles R2, R3,...., Rk en orden simtrico.

El recorrido en orden posterior de R pasa por los vrtices de los subarboles R1,
R2,...., Rk en orden posterior y a continuacin por la raz.

Un rbol binario es uno con raz en el cual cada vrtice tiene un hijo a la derecha o
un hijo a la izquierda, o viceversa, o bien ningn hijo. Un rbol binario completo es
uno en el cual cada vrtice tiene un hijo a la derecha y uno a la izquierda, o bien
ningn hijo.

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.

Un rbol binario de bsqueda es un rbol binario T donde se han asociado datos a
los vrtices. Los datos se disponen de manera que para cualquier vrtice v en T,
cada dato en el subarbol a la izquierda de v es menor que el dato correspondiente
a v.

Arboles generadores:

Un rbol T es un rbol generador de un grafo G si T es un subgrafo de G que
contiene todos los vrtices de G.

A esta caracterstica general es posible agregar ciertos teoremas de modo de
detallar an ms el alcance de la definicin. Es as como el Grafo que contiene a T
debe ser conexo, pues de lo contrario no existira un subgrafo que contuviera todos
sus vrtices.

En general un grafo G tendr varios rboles generadores ,como el del ejemplo 1 el
cual tiene a lo menos dos arboles generadores T1 yT2.

DEFINICIONES BSICAS
Un Grafo (o grafo no dirigido) es un conjunto V de vrtices y un conjunto E de aristas
queda asociada a un par no ordenado de vrtices. Si
existe una nica arista e asociada con los vrtices v y w, escribimos e = (v,w). En
este contexto (v,w) denota una arista en un grafo no dirigido y no un par ordenado.
Un grafo dirigido (o digrafo) consta de un conjunto finito de vrtices V y un conjunto
de arcos E V V (obsrvese que cada arco es un par ordenado de vrtices).
Grafo conexo: un grafo G es conexo si dados cualesquiera dos vrtices v y w en G,
existe un camino de v a w.
Camino: sean v0 y vn vrtices de un grafo. Un camino de v0 a vn de longitud n es
una sucesin alternante de n+1 vrtices y n aristas que comienza con el vrtice v0
y termina con el vrtice vn.
Longitud del camino: es el nmero de aristas que contiene.
Ciclo: sean v y w vrtices en un grafo G, un ciclo o circuito es un camino de longitud
distinta de 0 de v a w, sin aristas repetidas.
Subgrafo: sea G (V, E) un grafo. (V, E) es un subgrafo de G si
a) V V y E E.
b) Para cada arista e E, si e es incidente en v y w, entonces v, w V.
Grafo con pesos (o poderado): es un grafo en el cual se le asignan valores a las
aristas y la longitud del camino de un grafo con pesos es la suma de todos los pesos
de las aristas en la ruta (camino).

rbol: es un grafo en el que cualesquiera dos vrtices estn conectados
por exactamente un camino.


rboles de expansin
Definicin: un rbol T es un rbol de expansin de un grafo G si T es un subgrafo
de G que contiene a todos los vrtices de G.
Un grafo G tiene un rbol de expansin si y solo si G es conexo.

Arboles de expansin mnima

Definicin: sea G un rbol con pesos. Un rbol de expansin mnimo de G es un
rbol de expansin de G con mnimo peso, es decir cuya suma de pesos sea
mnima.
Para calcular el rbol de peso mnimo existen 2 algoritmos:
Prim: Consiste en ir borrando las aristas de mayor peso posible y que
no sean aristas de separacin.
Kruskal: Se van escogiendo las aristas de menor peso hasta conseguir
un rbol de peso mnimo
Algoritmo de Prim: Este algoritmo determina un rbol de expansin mnimo en un
grafo conexo con pesos.
El algoritmo encuentra un subconjunto de aristas que forman un rbol con todos
los vrtices, donde el peso total de todas las aristas en el rbol es el mnimo posible.
Pasos para realizar el algoritmo:
1. Se marca un nodo cualquiera, ser el nodo de partida.
2. Seleccionamos la arista de menos valor incidente en el nodo marcado
anteriormente, y marcamos el otro nodo en el que incide.
3. Repetir el paso 2 siempre que la arista elegida enlace un nodo y otro que
no lo est.
4. El proceso termina cuando tenemos todos los nodos del grafo marcados.
Al concluir el algoritmo, T es un rbol de expansin mnimo.




Algoritmo de Kruskal: Se eligen aristas de la forma ms econmica. Inicialmente se
ordenan las aristas por su peso. A continuacin se van eligiendo las aristas de
menor peso de modo tal, que no formen ciclo con las aristas anteriormente
seleccionadas. Para evitar que se formen ciclos se asignan etiquetas a los vrtices
de modo que los vrtices que formen parte de las aristas ya elegidas tengan todos
la misma etiqueta. Una etiqueta es una informacin asociada a un vrtice que los
hace distinguibles entre s.


1. T= {}
2. Asignar etiquetas a todos los vrtices t(i)=i, i=1, 2, ..., n.
3. Mientras haya vrtices con etiquetas diferentes repetir.
a) Escoger la arista (u, v) de menor peso tal que t(u) sea diferente de t(v).
Agregarla a T
b) Asignar a todos los vrtices de una componente conexa de T la misma
etiqueta.










rboles binarios
Definicin: un rbol binario es un rbol con raz en el cual cada vrtice tiene cero,
uno o dos hijos. Si un vrtice tiene un hijo, ese hijo se designa como un hijo izquierdo
o un hijo derecho (pero no ambos). Si un vrtice tiene dos hijos, uno de ellos se
designa como un hijo izquierdo y el otro se designa como un hijo derecho.



Un rbol de bsqueda binaria es un rbol binario T en el cual se asocian ciertos
datos con los vrtices. Los datos estn ordenados de modo que, para cada vrtice
v en T, cada elemento de dato en el subrbol izquierdo de v sea menor que el
elemento de dato en v y cada elemento de dato en el subrbol derecho de v es
mayor que el elemento de dato en v.
Los arboles de bsqueda binaria son tiles para localizar datos. Es decir, dado un
elemento D, podemos determinar con facilidad si D est en un rbol de bsqueda
binaria y, de estar presente, conocer su posicin. Para determinar si un elemento
de dato D esta en un rbol de bsqueda binaria, comenzaramos en la raz. Luego
compararamos de manera sucesiva D con el elemento de dato del vrtice en
cuestin. Si D es igual al elemento de dato del vrtice en cuestin, hemos
encontrado a D, por lo cual habremos concluido. Si D es menor que el elemento de
dato en el vrtice en cuestin v, nos movemos al hijo izquierdo de v y repetimos el
proceso. Si D es mayor que el elemento de dato en el vrtice en cuestin v, nos
movemos al hijo derecho de v y repetimos el proceso. Si en algn momento no
existe un hijo al cual moverse, podemos concluir que D no est en el rbol.