Arboles y Redes
Arboles y Redes
Arboles y Redes
DOCUMENTACION
1
INDICE
INTRRODUCCION ............................................................................................................................................2
ANEXO ...........................................................................................................................................................33
Conclusión .....................................................................................................................................................37
2 INTRRODUCCION
Al día de hoy con el avance de las tecnologías cada día es más fundamental
aprender sobre el uso de dichas tecnologías, hoy le platicaremos sobre los árboles
y los tipos de árboles que existen, el uso que se le da a cada árbol y también como
es que con esto podemos aplicarlo en las redes, ya que los árboles son muy
fundaméntales tanto en la programación como en algunas otras áreas.
también veremos cómo se componen los árboles, que es un hijo, la raíz, todos los
componentes de un árbol, lo que es un árbol con peso y también algunos métodos.
todo esto va de la mano con la teoría de los grafos, pues para comprender de forma
adecuada los árboles debemos dominar el tema de los grafos ya que en si un árbol
es un grafo, pero aquí hablaremos de forma más detallada
3 6.1 ARBOLES
Hay un tipo especial de grafo, denominado árbol, que se presenta en múltiples
aplicaciones. En ciencias de la computación los árboles son particularmente útiles.
Por ejemplo, se utilizan para organizar información de tal modo que sea posible
efectuar eficientemente operaciones que atañan a esa información. Para construir
algoritmos eficientes para localizar artículos en una lista. Para construir códigos
eficientes para almacenar y transmitir datos. Para modelar procedimientos que son
llevados a cabo al utilizar una secuencia de decisiones. Introduzcamos pues el
concepto de árbol.
• Un árbol es un grafo simple, conexo y acíclico (sin ciclos) en
el que todo par de vértices están unidos por un único camino
simple.
• Un bosque es un grafo acíclico, es decir, es una unión disjunta
de árboles.
• Una hoja en un grafo es un vértice de grado 1.
• Un nivel de un nodo del árbol (altura) es el nivel de su
padre más uno. Por definición, la raíz del árbol tiene nivel 0.
• Un árbol generador de un grafo G es un subgrafo generador
de G que es un árbol.
CLASES DE ARBOLES
Nodo Hijo: Cualquiera de lo nodo apuntado por uno de los nodos del árbol. Un
nodo puede tener varios hijos. X es hijo de Y, sí y solo sí el nodo X es apuntado por
Y. También se dice que X es descendiente directo de Y.
Nodo Raíz: Es el único nodo del árbol que no tiene padre. Este es el nodo que
usaremos para referirnos al árbol.
Nodo Hoja: Nodo que no tiene hijos. Se llama hoja o terminal a aquellos nodos que
no tienen ramificaciones (hijos).
Orden: Es el número potencial de hijos que puede tener cada elemento de árbol. De
este modo, diremos que un árbol en el que cada nodo puede apuntar a otros dos es
de orden dos, si puede apuntar a tres será de orden tres, etc. Podríamos decir que
nuestro árbol de ejemplo es de orden tres.
Raíz de un árbol: Un árbol con raíz es aquella que posee un vértice cuyo grado de
7
entrada es 0 y los grados de entrada de todos los demás vértices es 1.
Hijos: Cuando salen de un vértice, y se dice que son hermanos cuando salen de un
mismo vértice.
Ancestros y descendientes: El nodo n1 es un ancestro del nodo n2 (y n2 (es un
9
descendiente de n1).
2. B es hijo de A.
C es hijo de A.
D es hijo de B.
E es hijo de B.
L es hijo de H.
3. A es padre de B.
B es padre de D.
D es padre de I.
C es padre de G.
12
H es padre de L.
4. B y C son hermanos.
D, E y F son hermanos.
G y H son hermanos.
J y K son hermanos.
hojas.
Este grafo representa un árbol binario completo porque cada uno de sus vértices
internos tiene un hijo.
En esta figura se representa un árbol, árbol 3-ario, completo porque cada uno de
sus vértices internos tiene tres hijos.
16
Este grafo representa un árbol m-ario completo para alguna m, porque algunos de
sus vértices internos tienen dos hijos y otros tienen tres hijos.
También existe el caso de un árbol con raíz ordenado debido que los hijos de cada
vértice interno están ordenados, y estos se expresan en el grafo de tal forma que
los hijos de cada vértice interno se representan en orden de izquierda a derecha.
Si el árbol con raíz ordenado tiene un vértice interno del cual emanan dos hijos, el
primero se nombra hijo izquierdo y el segundo es llamado hijo derecho.
17 6.1.2 CLASIFICACIÓN POR ALTURA Y NÚMERO DE
NODOS
Orden: es el número potencial de hijos que puede tener cada elemento de árbol.
De este modo, diremos que un árbol en el que cada nodo puede apuntar a otros dos
es de orden dos, si puede apuntar a tres será de orden tres, etc.
Grado: el número de hijos que tiene el elemento con más hijos dentro del árbol. En
el árbol del ejemplo, el grado es tres, ya que tanto 'A' como 'D' tienen tres hijos, y
no existen elementos con más de tres hijos.
Nivel: se define para cada elemento del árbol como la distancia a la raíz, medida en
nodos. El nivel de la raíz es cero y el de sus hijos uno. Así sucesivamente. En el
ejemplo, el nodo 'D' tiene nivel 1, el nodo 'G' tiene nivel 2, y el nodo 'N', nivel 3.
Altura: la altura de un árbol se define como el nivel del nodo de mayor nivel. Como
cada nodo de un árbol puede considerarse a su vez como la raíz de un árbol,
también podemos hablar de altura de ramas. El árbol del ejemplo tiene altura 3, la
rama 'B' tiene altura 2, la rama 'G' tiene altura 1, la 'H' cero, etc.
Nodo raíz: nodo que no tiene padre. Este es el nodo que usaremos para
referirnos al árbol. En el ejemplo, ese nodo es el 'A'.
Nodo hijo: cualquiera de los nodos apuntados por uno de los nodos del
árbol. En el ejemplo, 'L' y 'M' son hijos de 'G'.
Nodo hoja: nodo que no tiene hijos. En el ejemplo hay varios: 'F', 'H', 'I', 'K',
'L', 'M', 'N' y 'O'.
Conjunto de árboles = Bosque. Un árbol es un grafo (no dirigido) conexo que no
18
contiene circuitos, es decir, que no existen dos o más paseos entre un par de
vértices. Una colección de árboles disjuntos es llamada un bosque.
Altura de un nodo: Es la longitud del camino más largo desde el nodo hasta una
hoja que sea descendiente de este nodo.
Altura de un árbol = altura del nodo raíz. Para poder realizar búsquedas eficientes
en árboles se manejan dos características: Los árboles pueden estar balanceados
por altura o por peso.
Árbol balanceado por altura: en dónde todos los hijos o nodos hoja se intentan
mantener a la misma distancia de la raíz.
Árbol balanceado por peso: en dónde los nodos más visitados o utilizados se
mantienen a poca distancia de la raíz
19 6.2. ÁRBOLES CON PESO
Dado un grafo conexo, un árbol recubierto mínimo de ese grafo es un subgrafo que
tiene que ser un árbol y contener todos los vértices del grafo inicial. Cada arista
tiene asignado un peso proporcional entre ellos, que es un número representativo
de algún objeto, distancia, etc.. , y se usa para asignar un peso total al árbol
recubierto mínimo computando la suma de todos los pesos de las aristas del árbol
en cuestión. Un árbol recubridor mínimo o un árbol expandido mínimo es un árbol
recubridor que pesa menos o igual que otros árboles recubridores.
Un árbol con peso es un grafo donde cada lado tiene un número asociado o
peso. Normalmente, al peso de un lado e se le designa por w(e). La suma de todos
los pesos de todos los lados de un grafo con peso se llama el peso del grafo
.
Peso total del grafo =19
21 6.2.1 RECORRIDO DE UN ÁRBOL
Se clasifican en Preorden, Inorden, Postorden:
Para recorrer un árbol binario no vacío en preorden, hay que realizar las siguientes
operaciones recursivamente en cada nodo, comenzando con el nodo de raíz:
1. Visite la raíz
Para recorrer un árbol binario no vacío en inorden (simétrico), hay que realizar las
siguientes operaciones recursivamente en cada nodo:
2. Visite la raíz
Para recorrer un árbol binario no vacío en postorden, hay que realizar las siguientes
operaciones recursivamente en cada nodo:
3. Visite la raíz
• En pre orden, la raíz se recorre antes que los recorridos de los subárboles
izquierdo y derecho
Una red de transporte es una gráfica dirigida, simple, con peso y que debe cumplir
las siguientes:
• Poseer una fuente o vértice fijo que no tiene aristas de entrada.
• Poseer un sumidero o vértice fijo que no tiene arista de salida.
• El peso Cij, es la arista dirigida de i a j llamado capacidad de “ij” es un
número no negativo.
Una red de transporte, es una gráfica dirigida, simple con peso que satisface:
• Un vértice fijo, designado como el origen o fuente, no tiene aristas de
entrada.
• Un vértice, designado como destino o sumidero, no tiene aristas salientes.
• El peso Cij de la arista dirigida (i, j) llamada capacidad de (i, j) es un número
no negativo
24 6.3.1 TEOREMA DE FLUJO MÁXIMO
Es una red G, el flujo máximo. Generalmente existen varios flujos con el mismo valor
máximo. Para encontrar el flujo máximo consideremos un flujo inicial en cada arista
igual a cero, después se determina un camino específico de la fuente al sumidero y
se incrementa el flujo el flujo.
Si una arista está dirigida hacia la fuente decimos que esta arista está dirigida en
forma impropia, en caso contrario está dirigida en forma propia.
Si se determina un camino P de la fuente al sumidero en donde cada arista de P
está orientada en forma propia y el flujo en cada arista es menor que la capacidad
de la arista, es posible aumentar el valor de flujo.
Es posible incrementar el flujo en ciertos caminos de la fuente al sumidero que tenga
aristas orientadas en forma impropia y propia. Sea P un camino de “a” a “z” y sea
“x” un vértice en P que no sea ni “a” ni “z”
• Ambas aristas están orientadas en forma propia e impropia, en este caso, si
incrementamos el flujo en “, el flujo en la entrada en x seguirá siendo igual
al flujo de salida de x.
• Si incrementamos el flujo en e2 en “, debemos disminuir el flujo en e1 en ‘’
de modo que el flujo de entrada en x siga siendo igual al flujo de salida en x
• Es análogo en el caso b
• Disminuimos el flujo en ambas aristas en ‘’. En cada caso las asignaciones
resultantes de las aristas dan como resultado un flujo.
Para realizar estas alteraciones debemos tener un flujo menor que la capacidad en
una arista orientada en forma propia y un flujo distinto de cero en una arista
orientada en forma impropia.
Teorema 2:
Sea P un camino de “a” a” z” en una red G tal que:
• Para arista (i, j) de P, orientada en forma propia.
Fij<Cij
• Para cada arista (i, j) de P, orientada en forma propia.
0< Fij
Se define
25
F’ij= si no existieran caminos que concuerden con el teorema 2, el flujo es máximo,
entonces se considera el algoritmo:
PAREOS O PAREJAMIENTOS
A=J2 Y J5
B=J2 Y J5
C=J1, J3, J4 Y J5
D=J2 Y J5
La situación puede ser modelada por el grafo de la figura anterior donde los vértices
representan a los solicitantes y a los trabajos. Un lado une a un solicitante con el
trabajo para el cual está calificado. Es posible demostrar que no se puede parear
un trabajo con cada solicitante; basta considerar que A, B y D están calificados solo
para los trabajos J2 y J5. Si A y B se les asigna un trabajo, no queda trabajo alguno
29
para D. Por lo tanto, no existe asignación de trabajo para A, B, C y D.
La definición formal es: sea G un grafo dirigido bipartido con conjuntos disjuntos de
vértices V y W, en el cual los lados están dirigidos desde los vértices de v a W
(cualquier vértice de G está en V o en W, pero no en ambos) un pareo para G es un
conjunto de lados E los cuales no tienen vértices comunes. Un pareo maximal para
G es un pareo E que contiene el máximo número de lados completos. Un pareo
completo para G es un pareo o parejamiento E que tiene la siguiente propiedad:
Ejemplo:
Supóngase además, que el lado (v,w), v V, w W, tiene flujo 1. El único lado que
llega al vértice v es (a, v). Este lado debe tener flujo igual a 1; así que el flujo en el
vértice v es igual a 1. Debido a que el flujo que sale de v es también el único lado
de la forma (v, x) que tiene flujo 1 es (v, w). Similarmente el único lado de la forma
(x, w) que tiene flujo 1 es (v, w). Luego su E es el conjunto de los lados de forma
(v,w)que tiene flujo 1, entonces los elementos de E no tienen vértices comunes por
lo tanto, E es pareo para G.
Las partes (b) y (c) se deducen el hecho de que l número de vértices en v pareados
es igual al valor del flujo correspondiente.
lSl≤lR(S)l.
ANEXO
EJEMPLOS VISTOS EN CLASES:
34
EJEMPLOS DEL ALUMNO:
35
36
37 Conclusión
Pudimos entender que tanto los grafos y los arboles tienen una relación, ya que todo
empieza con tema que vimos en la unidad 5 (GRAFOS), ya que en dicha unidad
vimos las características de los grafos y como podemos crear uno con ciertas
características, también comprendimos como están creados los grafos y ahora en
esta unidad hablamos más sobre los árboles, hicimos algunos ejercicios y también
aprendimos como ordenar de diferentes formas un árbol, como es que sustituimos
los números en un árbol y como tenemos que estructurarlo.