Está en la página 1de 8

6.

4 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.
Podemos destacar que cuando un grafo G es un rbol, se reemplaza G, por R.

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.
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
sub arboles R2, R3,...., Rk en orden simtrico.
El recorrido en orden posterior de R pasa por los vrtices de los sub arboles 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 sub arbol 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 sub grafo 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 sub grafo 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 rboles generadores T1 yT2.
Ej.
La implementacin ms sencilla es la de un array en el que cada elemento
tiene un cursor al padre

Para que el orden de los nudos est bien definido


Se numeran los hijos con nmeros mayores al del padre
Se numeran los hermanos en orden creciente de izquierda a derecha.

Recorrido de rboles.
El modo evidente de moverse a travs de las ramas de un rbol es siguiendo
los punteros, del mismo modo en que nos movamos a travs de las listas. Esos
recorridos dependen en gran medida del tipo y propsito del rbol, pero hay
ciertos recorridos que usaremos frecuentemente. Se trata de aquellos
recorridos que incluyen todo el rbol. Hay tres formas de recorrer un rbol
completo, y las tres se suelen implementar mediante recursividad. En los tres
casos se sigue siempre a partir de cada nodo todas las ramas una por una.
Supongamos que tenemos un rbol de orden tres, y queremos recorrerlo por
completo. Partiremos del nodo raz: Recorrer rbol (raz);La funcin Recorrer
rbol, aplicando recursividad, ser tan sencilla como invocar de nuevo a la
funcin Recorrer rbol para cada una de las ramas: void Recorrer rbol (rbol
a) {if(a == NULL) return;RecorrerArbol(a->rama[0]);RecorrerArbol(a>rama[1]);RecorrerArbol(a->rama[2]);}Lo que diferencia los distintos mtodos
de recorrer el rbol no es el sistema de hacerlo, sino el momento que elegimos

para procesar el valor de cada nodo con relacin a los recorridos de cada una
de las ramas.

6.5 Redes
En matemtica, una red es la generalizacin del concepto de sucesin, de tal
manera que no necesariamente tenga una cantidad numerable de elementos.
Es el concepto ms adecuado (o tambin su equivalente de filtro) para estudiar
la convergencia en un espacio topolgico.
Una red en un conjunto X no es ms que una aplicacin r: (D, ~) X entre un
conjunto dirigido (D, ~) y un conjunto X. Se suele representar por (x_d) _ { dE
D}, donde, x _ d:= r (d).

Teorema del Flujo Mximo


Una vez que hemos modelado una situacin especfica con una red de
transporte, es importante poder analizar su alcance, esto es, el flujo mximo
que puede soportar.
En el caso concreto de las bombas de agua nos interesa saber cul es la
cantidad mxima que es posible suministrar con este sistema de bombeo. Para
esto veremos un algoritmo que nos ayudar a determinar este valor tan
importante.
Definicin 1. Sea R una red de transporte con fuente F, sumidero S, con pesos
w (i, j) y con flujo f. Sea n0, n1,, nk un camino de F = n0 a S = nk, donde las
aristas pertenecen a R pero sin considerarlo como un grafo dirigido. Una arista
(ni, ni+1) en el camino:
Si est en R decimos que est orientada en forma propia y si no est en R
decimos que no est orientada en forma propia.

Teorema del flujo Mnimo


Un corte T es una seleccin cualquiera de nodos de una red tal que la fuente F
est en T y el sumidero S no est en T. Vemos por lo tanto que S Tc.
Definicin: Decimos que un corte es mnimo si la capacidad tiene un valor
mnimo.

Ejemplo. La capacidad del corte del ejemplo 1 es w (F, e) + w (f, h) + w(c, d) =


3 + 6 +5 = 14
Teorema. Si tenemos una red R con flujo f y un corte T.
Entonces si la igualdad del teorema anterior se cumple se tiene un flujo
mximo y un corte mnimo. En este caso se tiene: f (i, j) = w (i, j) si i T, j NO
T y tambin f (i, j) = 0 si i NO T, j T.
A este teorema se le conoce como el teorema del flujo mximo y corte mnimo.

Pareos
La teora de redes y en particular el teorema del flujo mximo tienen muchas
aplicaciones. Uno de los ejemplos ms ilustrativos es el problema de hacer
corresponder los elementos entre dos conjuntos.
Supongamos que tenemos una relacin entre dos conjuntos, por ejemplo el
caso de que 4 personas S1, S2, S3 y S4 solicitan trabajo y se tienen 4 trabajos
disponibles T1, T2, T3, T4: El primero est capacitado para los trabajos T2 y T4,
el segundo solicita a T1, T3 y T4 y el tercero a T2 y T4 y el cuarto para T2 y T4.
Podemos construir una red en base a esta relacin agregando una fuente y un
sumidero como se ve en la figura. Le asignamos as tambin a cada una de las
aristas el valor de 1.
La pregunta que nos hacemos es si se puede lograr un acomodo en donde
todos tengan trabajo.
El problema se resuelve aplicando el algoritmo del flujo mximo y corte mnimo
a la red as construida.
Un acoplamiento con el nmero mximo de aristas se obtiene cuando el flujo
es mximo. Tambin es posible ver que se tiene un acoplamiento completo, o
sea que todos pueden conseguir trabajo, si el flujo equivale al nmero de
elementos en el primer conjunto.

Red de Petri

Una red de Petri es un grafo dirigido bipartito, con un estado inicial, llamado
marcacin inicial. Los dos componentes principales de la red de Petri son los
sitios (tambin conocidos como estados) y las transiciones.
Las redes de Petri representan una alternativa para modelar sistemas, sus
caractersticas hacen que, para algunos problemas las redes de Petri funcionen
de una manera natural.

Las PN son consideradas una herramienta para el estudio de los sistemas. Con su ayuda
podemos modelar el comportamiento y la estructura de un sistema, y llevar el modelo a
condiciones lmite, que en un sistema real son difciles de lograr o muy costosas.
La teora de PN ha llegado a ser reconocida como una metodologa establecida en la
literatura de la robtica para modelar los sistemas de manufactura flexibles.

6.6 Aplicaciones de Grafos y Arboles

Aplicaciones de Grafos.
Hoy en da podemos ver muchas cosas que nos pueden parecer de lo ms cotidianas,
carreteras, lneas telefnicas, lneas de televisin por cable, el transporte colectivo metro,
circuitos elctricos de nuestras casas, automviles, y tantas cosas ms; lo que no pensamos
frecuentemente es que estos forman parte de algo que en matemticas se denomina como
grafos.
Un grafo G es un rbol si cada dos puntos de G estn unidos por un solo camino (conexo)
y p = q +1. (El nmero de puntos es igual al nmero de lneas ms uno.

Actualmente, la Teora de Grafos permite esquematizar y resolver muchos problemas en


diferentes campos de la ciencia y la tecnologa. En particular, tambin se viene utilizando
dicha teora para modelar y resolver distintos problemas referidos a la eficiencia del
transporte.

Aplicaciones de arboles.
Existe un simple e importante tipo de grafos los cuales han sido denominado de igual modo
por todos los autores, a saber: un rbol. Arboles son importantes no slo por el motivo de
sus aplicaciones en muchos campos, sino tambin para la Teora de Grafos en s misma.
Una razn para ms adelante es la gran simplicidad que los arboles hacen para investigar
conjeturas. Se han desarrollado varios modos para definir un rbol. Nosotros estudiamos
centralmente los rboles usando terminologa geomtrica.

De las estructuras de datos de tipo rbol, la especie ms utilizada es el rbol


Binario de Bsqueda. Los principales tipos de rboles binarios de bsqueda son
los AVL, B* y balanceado.

Los rboles binarios de bsqueda se utilizan para localizar en forma rpida un


elemento almacenado en ese rbol, a partir de una clave. Son una forma de
implementar arreglos asociativos o mapas, en donde se almacenan elementos
que son pares <clave, valor>.

En las bases de datos relacionales, para poder localizar en forma rpida un


registro de una tabla a partir de una clave, se utilizan objetos asociados a las
tablas llamados ndices. Estos ndices son rboles binarios de bsqueda
almacenados en el disco, que a partir de una clave indican dnde se encuentra
el registro correspondiente en la tabla.
Otro ejemplo de la utilizacin de rboles binarios de bsqueda 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.).

En Teora de Compiladores, durante la fase de anlisis del cdigo fuente, los


analizadores lxico, sintctico y semntico utilizan tablas de smbolos, en
donde se almacenan las palabras clave y las palabras reservadas y sus
atributos, implementadas (por lo general) como rboles binarios de bsqueda.

En sntesis, se utiliza un rbol binario de bsqueda cuando se desea almacenar


en una estructura de datos cierta informacin, a la cual luego se desea acceder
en forma rpida a partir de una clave.

De las estructuras de datos de tipo Arbol, la especie ms utilizada es el Arbol


Binario de Bsqueda. Los principales tipos de rboles binarios de bsqueda son
los AVL, B* y balanceado.

Los rboles binarios de bsqueda se utilizan para localizar en forma rpida un


elemento almacenado en ese rbol, a partir de una clave. Son una forma de
implementar arreglos asociativos o mapas, en donde se almacenan elementos
que son pares <clave, valor>.

En las bases de datos relacionales, para poder localizar en forma rpida un


registro de una taba a partir de una clave, se utilizan objetos asociados a las
tablas llamados ndices. Estos ndices son rboles binarios de bsqueda

almacenados en el disco, que a partir de una clave indican dnde se encuentra


el registro correspondiente en la tabla.

Otro ejemplo de la utilizacin de rboles binarios de bsqueda 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.).

En Teora de Compiladores, durante la fase de anlisis del cdigo fuente, los


analizadores lxico, sintctico y semntico utilizan tablas de smbolos, en
donde se almacenan las palabras clave y las palabras reservadas y sus
atributos, implementadas (por lo general) como rboles binarios de bsqueda.

En sntesis, se utiliza un rbol binario de bsqueda cuando se desea almacenar


en una estructura de datos cierta informacin, a la cual luego se desea acceder
en forma rpida a partir de una clave.

También podría gustarte