Está en la página 1de 9

Instituto Tecnológico de México

Campus Culiacán

Matemáticas Discretas
Alan Omar Urías Osuna
Tarea 6
Árboles y Redes

Santiago Armenta Rodríguez


19:00 – 20:00
30/11/2023
INTRODUCCIÓN
Los árboles y las redes son dos conceptos fundamentales en la informática y las
matemáticas.
Un árbol es una estructura de datos no lineal que se utiliza para representar
relaciones jerárquicas entre objetos. Un árbol consta de nodos, donde cada nodo
puede tener cero o más nodos hijos. Un nodo que no tiene hijos se llama nodo hoja.
Hay un nodo especial llamado raíz que no tiene padres. Los árboles se utilizan en
muchas áreas de la informática, incluyendo la organización de archivos en sistemas
de archivos, la representación de sintaxis en compiladores y la implementación de
estructuras de datos eficientes.
Por otro lado, una red es un conjunto de nodos conectados por enlaces. Las redes
pueden representar una amplia variedad de sistemas en el mundo real, incluyendo
redes de computadoras, redes sociales, redes de transporte y muchos otros. En una
red, cada enlace conecta dos nodos y puede representar una relación entre ellos.
Las redes se utilizan para modelar y analizar la interacción y la conectividad en estos
sistemas.
Ambos, árboles y redes, son herramientas poderosas para modelar y resolver
problemas complejos en diversas disciplinas. Aunque son diferentes en su
estructura y propósito, ambos se basan en el concepto fundamental de representar
relaciones entre objetos. Estudiar árboles y redes puede proporcionar una
comprensión profunda de cómo se organizan y se conectan los sistemas en el
mundo real.

ARBOLES
-Componentes y propiedades
• Nodo: Es la unidad sobre la que se construye el árbol y puede tener cero o
más nodos hijos conectados a él.

• Raíz: Es el primer nodo de un árbol. Solo un nodo del árbol puede ser la raíz.

• Nodo Padre: Todos aquellos nodos que tienen al menos un hijo.

• Nodo Hijo: Los hijos son todos aquellos nodos que tienen un padre.

• Nodo Hermano: Los nodos hermanos son aquellos nodos que comparten a
un mismo padre en común dentro de la estructura.

• Nodo Hoja o Terminal: Son todos aquellos nodos que no tienen hijos.
• Nodo Rama o Interior: Estos son todos aquellos nodos que no son la raíz y
que además tienen al menos un hijo.

• Nivel: Indica la generación o profundidad de un nodo en relación con la raíz.


La raíz está en el nivel 0, sus hijos directos están en el nivel 1, y así
sucesivamente.

• Altura: La altura de un árbol es la longitud máxima del camino desde la raíz


hasta una hoja. En otras palabras, es el número máximo de niveles.

• Jerarquía: Los nodos en un árbol están organizados jerárquicamente, con la


raíz en la parte superior y las hojas en la parte inferior.

• Acíclico: Un árbol no debe contener ciclos, lo que significa que no puede


haber un camino cerrado donde se pueda seguir una serie de nodos y
regresar al mismo nodo.

• Grado de un Nodo: El número de subárboles de un nodo se llama su grado.


En un árbol binario, por ejemplo, cada nodo tiene un grado máximo de 2.
-Clasificación por altura y número de nodos
Clasificación por altura: La altura de un árbol es el máximo de las longitudes de los
paseos en un árbol. En otras palabras, es el número máximo de niveles de un árbol.
La altura se calcula mediante recursividad tomando el nivel más grande de los dos
sub-árboles de forma recursiva de la siguiente manera:
altura = Max (altura (hijo1), altura (hijo2), altura (hijoN)) + 1.
Clasificación por número de nodos: Los árboles pueden ser binarios (cada nodo
padre tiene uno o dos hijos máximo), trinarios (cada nodo padre tiene máximo tres
hijos), cuaternarios (cada nodo padre tiene como máximo 4 hijos), etc.
Algunos tipos:
• Árbol binario: Es aquel en el que cada nodo tiene 2 ramas o ninguna. Un
árbol binario completo con i nodos internos tiene (i + 1) hojas y (2i +1) vértices
en total.

• Árbol binario de búsqueda auto-balanceable: Es un árbol binario de


búsqueda que intenta mantener su altura, o el número de niveles de nodos
bajo la raíz, tan pequeños como sea posible en todo momento,
automáticamente.

• Árbol multicamino: Un árbol multicamino posee un grado g mayor a dos,


donde cada nodo de información del árbol tiene un máximo de g hijos.
• Árbol Vacío: Un árbol que no contiene nodos.
• Árbol Finito o Finitamente Ramificado: Un árbol con un número finito de
nodos.
• Árbol Infinito o Infinitamente Ramificado: Un árbol que teóricamente podría
tener un número infinito de nodos.
• Árbol Completo: Un árbol en el que todos los niveles están completamente
llenos, excepto posiblemente el último, que se llena de izquierda a derecha.
• Árbol Perfecto: Un árbol completo en el que todas las hojas están en el mismo
nivel.
• Árbol Binario Completo: Un árbol binario en el que cada nivel está
completamente lleno, excepto posiblemente el último, y todos los nodos
están lo más a la izquierda posible.
• Árbol Degenerado o Árbol Skewed: Un árbol en el que cada nodo tiene como
máximo un hijo. Esencialmente, se convierte en una lista enlazada y su altura
es igual al número de nodos.

• Árbol Raso o Superficial: Un árbol con una altura mínima. Todos los nodos
están en el mismo nivel o en niveles muy cercanos.

• Árbol Balanceado: Un árbol en el que la diferencia de alturas entre los


subárboles izquierdo y derecho de cada nodo no es mayor que 1. Ejemplos
incluyen los árboles AVL o los árboles rojinegros.

ÁRBOLES CON PESO


Un árbol con peso es una estructura de datos en la que cada nodo tiene un valor o
“peso” asociado. Este peso puede representar una variedad de cosas, dependiendo
del problema que se esté resolviendo. Por ejemplo, en un árbol de expansión
mínima, el peso puede representar el costo de viajar entre dos nodos.
El peso de un árbol se calcula como la suma de los pesos de todos sus nodos. En
otras palabras, el peso de un árbol es igual a la suma del peso de los sub-árboles
hijos + 1. Esto se puede calcular mediante cualquier tipo de recorrido que vaya
contando los nodos a medida que avanza sobre la estructura.
Es importante tener en cuenta que el concepto de “peso” puede variar dependiendo
del contexto. En algunos casos, el peso puede referirse al número de nodos en el
árbol. En otros casos, puede referirse a la suma de los valores almacenados en los
nodos del árbol.
-Recorrido de un árbol
El recorrido de un árbol en informática se refiere al proceso de visitar, de manera
sistemática y exactamente una vez, cada nodo en una estructura de datos de
árbol1. Los recorridos están clasificados por el orden en el cual son visitados los
nodos1. Aquí están los tipos más comunes de recorridos para un árbol binario:
• Preorden (raíz, izquierdo, derecho): Para recorrer un árbol binario no vacío
en preorden, se deben realizar las siguientes operaciones recursivamente en
cada nodo, comenzando con el nodo de raíz:
o Visite la raíz
o Atraviese el sub-árbol izquierdo
o Atraviese el sub-árbol derecho
• Inorden (izquierdo, raíz, derecho): Para recorrer un árbol binario no vacío en
inorden (simétrico), se deben realizar las siguientes operaciones
recursivamente en cada nodo:
o Atraviese el sub-árbol izquierdo
o Visite la raíz
o Atraviese el sub-árbol derecho
• Postorden (izquierdo, derecho, raíz): Para recorrer un árbol binario no vacío
en postorden, se deben realizar las siguientes operaciones recursivamente
en cada nodo:
o Atraviese el sub-árbol izquierdo
o Atraviese el sub-árbol derecho
o Visite la raíz

REDES
-Teorema de flujo máximo
Consiste en encontrar la cantidad máxima de flujo total que puede circular a través
de la red en una unidad de tiempo. Para encontrar el flujo máximo consideraremos
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.
Paso para realizar en Flujo Máximo:
1. Encontrar un camino que vaya desde el origen hasta el destino y que sus arcos
tengan de flujo mayor a cero.
2. Encontrar en arco de menor capacidad de flujo del camino seleccionado en el
paso anterior.
3. Para el camino elegido, reducir la capacidad de flujo del arco menor a cada arco
involucrado en el camino.
4. Repetir o través los pasos desde el Nº 1.

-Teorema de flujo mínimo


El modelo determina los flujos en los diferentes arcos que minimizan el costo total
al mismo tiempo que satisfacen las restricciones del flujo en los arcos y las
cantidades de la oferta y la demanda en los nodos.
El teorema del flujo mínimo es el dual del teorema de flujos máximos. Mientras que
el teorema de flujos máximos establece que existe un flujo máximo que puede pasar
a través de un grafo, el teorema del flujo mínimo establece que existe un flujo
mínimo que puede pasar a través de un grafo.

-Pareos y redes de Petri


Las Redes de Petri son una herramienta de modelación gráfica y matemática que
puede aplicarse en el estudio de muchos sistemas. Fueron introducidas en 1962 por
Carl Adam Petri, en su trabajo de tesis doctoral titulado “Kommunikation mit
Automaten”, sometido en la Facultad de Matemáticas de la Universidad de Bonn,
en Alemania. Con ellas se puede modelar y estudiar sistemas concurrentes,
asíncronos, distribuidos, paralelos, no deterministas y/o estocásticos. Como una
herramienta gráfica, las Redes de Petri pueden utilizarse como un apoyo de
comunicación visual similar a diagramas de flujo, diagramas de bloques y
redes. Además, los tokens son utilizados en estas redes para simular el
comportamiento dinámico y concurrente de los sistemas.
Por otro lado, un pareo en un grafo es un subconjunto de aristas que no tienen
vértices en común. En el contexto de las Redes de Petri, los pareos pueden ser
útiles para analizar y manipular la estructura de la red.
EJEMPLOS
REFERENCIAS BIBLIOGRÁFICAS
https://9relaciones.blogspot.com/2014/11/teoria-de-grafos.html#12
https://www.uaeh.edu.mx/docencia/P_Presentaciones/icbi/asignatura/Cap6A
RBOLES.pdf
https://www.uv.mx/personal/ermeneses/files/2021/08/Clase8-Arboles.pdf
https://www.oscarblancarteblog.com/2014/08/22/estructura-de-datos-arboles/

También podría gustarte