0% encontró este documento útil (0 votos)
47 vistas10 páginas

Actividad VII

Cargado por

Luis Reyes
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
47 vistas10 páginas

Actividad VII

Cargado por

Luis Reyes
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd

Actividad VII

Catedrático:
Arnold Roberto Hernández Ruiz

Alumno:
Luis Angel Aguilar Reyes

Número de cuenta:
122020011

Sede:
San Lorenzo

Fecha:
25/03/2025

Índice
1. Introducción

2. Marco Teórico

2.1. Definición de Árboles en Estructuras de Datos

2.2. Componentes de un Árbol

2.2.1. Nodos

2.2.2. Ramas

2.2.3. Hijos

2.2.4. Peso

2.2.5. Grado

2.2.6. Nivel

2.2.7. Orden

2.3. Tipos de Árboles

2.4. Operaciones en Árboles

2.5. Métodos de Búsqueda

2.5.1. Búsqueda en Amplitud

2.5.2. Búsqueda en Profundidad

3. Conclusiones

4. Bibliografía

Introducción
Las estructuras de datos son fundamentales en la informática y
permiten almacenar, organizar y manipular información de
manera eficiente. Dentro de estas estructuras, los árboles
desempeñan un papel esencial debido a su capacidad para
representar datos jerárquicos.
El presente informe tiene como objetivo explorar la estructura de
datos denominada "árboles" y sus componentes fundamentales
como nodos, ramas, hijos, peso, grado, nivel y orden. Además, se
detallarán dos métodos de búsqueda esenciales: la búsqueda en
amplitud y la búsqueda en profundidad. Finalmente, se incluirán
conclusiones sobre la importancia y aplicación de los árboles en la
informática.
Las estructuras de datos son fundamentales en la informática y
permiten almacenar, organizar y manipular información de
manera eficiente. Dentro de estas estructuras, los árboles
desempeñan un papel esencial debido a su capacidad para
representar datos jerárquicos.
El presente informe tiene como objetivo explorar la estructura de
datos denominada "árboles" y sus componentes fundamentales
como nodos, ramas, hijos, peso, grado, nivel y orden. Además, se
detallarán dos métodos de búsqueda esenciales: la búsqueda en
amplitud y la búsqueda en profundidad. Finalmente, se incluirán
conclusiones sobre la importancia y aplicación de los árboles en la
informática.
2. Marco Teórico

2.1 Definición de Árboles en Estructuras de Datos


Un árbol es una estructura de datos no lineal que se organiza en
forma jerárquica. Se utiliza para representar relaciones padre-hijo
de manera eficiente y para modelar problemas en los cuales la
información tiene una dependencia jerárquica. La estructura se
inicia en un único nodo llamado raíz y se extiende en diferentes
niveles, donde cada nodo puede tener cero o más nodos hijos.
Esta representación permite una organización lógica de los datos
y facilita operaciones de búsqueda, inserción y eliminación.

2.2 Componentes de un Árbol


2.2.1 Nodos
Un nodo es la unidad básica de un árbol. Cada nodo contiene
información relevante (puede ser un valor, una clave o datos
complejos) y, a menudo, referencias o punteros a otros nodos. En
muchas implementaciones, cada nodo puede incluir atributos
adicionales, como indicadores de balanceo (por ejemplo, en
árboles AVL o rojo-negro) o incluso información de peso. La
capacidad de un nodo para conectar con otros define la
estructura y la funcionalidad del árbol.

2.2.2 Ramas
Las ramas o aristas son los enlaces que conectan un nodo padre
con sus nodos hijos. Estas conexiones permiten la navegación a
través de la estructura jerárquica y son fundamentales para la
representación visual y conceptual del árbol. Cada rama simboliza
la relación directa entre dos nodos y facilita la ejecución de
algoritmos de recorrido o búsqueda.

2.2.3 Hijos
Los hijos son los nodos que descienden directamente de un nodo
padre. La relación entre un nodo padre y sus hijos es esencial
para definir la jerarquía del árbol. Un nodo puede tener varios
hijos, y aquellos que no tienen hijos se conocen como hojas. Esta
diferenciación es crucial para el análisis y optimización de
algoritmos basados en árboles.
2.2.4 Peso
El peso de un árbol puede interpretarse de diversas formas según
el contexto:
 En algunos casos, se refiere al número total de nodos que
componen el árbol.
 En otros escenarios, el peso puede ser un valor asignado a
cada nodo que indique la importancia, frecuencia o costo de
ese nodo dentro del conjunto de datos.
Esta medida es útil para analizar la complejidad y eficiencia de las
operaciones realizadas en la estructura.

2.2.5 Grado
El grado de un nodo se define como el número de hijos directos
que posee. Es una medida que ayuda a entender la ramificación
en cada punto del árbol. Asimismo, el grado del árbol se
determina como el mayor grado entre todos los nodos de la
estructura. Por ejemplo, en un árbol binario, el grado máximo es
2, ya que ningún nodo puede tener más de dos hijos.

2.2.6 Nivel
El nivel de un nodo es la distancia, medida en número de
conexiones o ramas, desde la raíz hasta ese nodo.
 La raíz se sitúa generalmente en el nivel 0 (o 1, según la
convención adoptada).
 Cada nivel sucesivo representa un aumento de uno en la
distancia respecto a la raíz.
Este concepto es fundamental para comprender la profundidad
del árbol y se utiliza en la planificación de algoritmos de recorrido,
donde el orden de exploración puede depender de la cercanía a la
raíz.

2.2.7 Orden
El orden de un árbol se refiere al número máximo de hijos que un
nodo puede tener. Este parámetro influye en la estructura y en la
eficiencia de las operaciones:
 En un árbol binario, el orden es 2.
 En árboles de mayor complejidad, como los árboles B, el
orden puede ser considerablemente mayor para optimizar
operaciones en bases de datos o sistemas de archivos.

2.3 Tipos de Árboles


Existen diversos tipos de árboles, cada uno con características y
usos específicos:
 Árbol Binario:
Cada nodo puede tener, a lo sumo, dos hijos denominados
hijo izquierdo e hijo derecho. Es la base para muchas otras
estructuras de árboles.

 Árbol Binario de Búsqueda (ABB):


Además de ser binario, cumple la propiedad de que, para
cada nodo, todos los valores del subárbol izquierdo son
menores y los del subárbol derecho son mayores que el valor
del nodo. Esto facilita búsquedas eficientes.

 Árbol AVL:
Es un árbol binario de búsqueda auto balanceado. La
característica distintiva es que para cualquier nodo, las
alturas de los subárboles izquierdo y derecho difieren en no
más de uno, lo que garantiza operaciones de búsqueda,
inserción y eliminación en tiempo logarítmico.
 Árbol B:
Se utiliza principalmente en sistemas de bases de datos y
archivos. Es un árbol auto balanceado de orden mayor, lo
que permite un manejo eficiente de grandes volúmenes de
datos en dispositivos de almacenamiento secundario.

 Árbol de Decisión:
Se emplea en problemas de clasificación y regresión en
inteligencia artificial y machine Learning. Cada nodo
representa una prueba o decisión basada en un atributo, y
cada rama representa el resultado de dicha prueba,
conduciendo a una conclusión o clasificación final.

2.4 Operaciones en Árboles


Las operaciones fundamentales sobre árboles permiten modificar
y consultar la estructura de manera sistemática:
 Inserción:
Consiste en agregar un nuevo nodo al árbol. En un árbol
binario de búsqueda, por ejemplo, la inserción se realiza
determinando la posición correcta del nuevo nodo para
mantener la propiedad de orden.
 Eliminación:
Implica remover un nodo existente, lo cual puede requerir
reestructurar el árbol para conservar su integridad. La
complejidad de la eliminación depende de si el nodo es una
hoja, tiene un solo hijo o múltiples hijos.
 Recorrido:
Es la técnica utilizada para visitar todos los nodos del árbol
de forma sistemática. Los recorridos más comunes son:
o Preorden: Visita primero el nodo raíz, luego recorre el
subárbol izquierdo y finalmente el subárbol derecho.
o Inorden: Recorre el subárbol izquierdo, visita el nodo
raíz y, por último, el subárbol derecho. Este recorrido es
especialmente útil en árboles binarios de búsqueda, ya
que devuelve los elementos en orden ascendente.
o Postorden: Recorre primero los subárboles (izquierdo
y derecho) y visita el nodo raíz al final.

2.5 Métodos de Búsqueda

2.5.1 Búsqueda en Amplitud (BFS)


La búsqueda en amplitud (Breadth-First Search, BFS) es un
método que explora el árbol nivel por nivel.
 Se comienza en la raíz y se examinan todos los nodos a ese
nivel antes de avanzar al siguiente.
 La implementación de BFS generalmente utiliza una cola
para mantener el orden de exploración, asegurando que los
nodos se visiten según su cercanía a la raíz.
 Este método es especialmente útil para encontrar la ruta
más corta en términos de número de aristas.

2.5.2 Búsqueda en Profundidad (DFS)


La búsqueda en profundidad (Depth-First Search, DFS) explora un
camino completo desde la raíz hasta una hoja antes de retroceder
y explorar otros caminos.
 DFS puede implementarse de forma recursiva o utilizando
una pila.
 Existen tres variantes principales de DFS, que se distinguen
según el orden en que se procesa el nodo:
o Preorden: Se procesa el nodo antes que sus hijos.
o Inorden: Se procesa el nodo entre la visita de su
subárbol izquierdo y el derecho.
o Postorden: Se procesa el nodo después de haber
recorrido sus subárboles.
 Este método es eficaz cuando se busca explorar todos los
posibles caminos de forma exhaustiva, aunque no garantiza
la ruta más corta en estructuras no ponderadas.
Conclusiones
Los árboles son una de las estructuras de datos más importantes
en la informática, ya que permiten organizar información de
manera eficiente y facilitan la implementación de algoritmos de
búsqueda y optimización. La comprensión de sus componentes y
métodos de búsqueda es esencial para su aplicación en diferentes
campos como inteligencia artificial, bases de datos y estructuras
jerárquicas.

Bibliografía
 Cormen, T. H., Leiserson, C. E., Rivest, R. L., & Stein, C. (2009).
Introduction to Algorithms (3ª ed.). MIT Press.

 Knuth, D. E. (1998). The Art of Computer Programming, Volume


1: Fundamental Algorithms (3ª ed.). Addison-Wesley.

 Sedgewick, R., & Wayne, K. (2011). Algorithms (4ª ed.).


Addison-Wesley Professional.
 Weiss, M. A. (2014). Data Structures and Algorithm Analysis in
C++ (4ª ed.). Pearson.

 Goodrich, M. T., Tamassia, R., & Goldwasser, M. H. (2014). Data


Structures and Algorithms in Java (6ª ed.). Wiley.

También podría gustarte