¿Por qué árbol?
A diferencia de Array y Linked List, que son estructuras de datos lineales, el árbol es una estructura de datos jerárquica (o no lineal).
1) Una razón para usar árboles podría ser porque desea almacenar información que naturalmente forma una jerarquía. Por ejemplo, el sistema de archivos en una computadora:
sistema de archivos
———–
- Insertar un elemento en un montón toma O (log n). ¿Aún si insertamos n elementos en el montón, resulta ser O (n)?
- Cómo crear un algoritmo con una hoja de cálculo
- ¿Cuál es la solución a este décimo problema polinómico de clase?
- ¿Qué tipo de algoritmo de Machine Learning usarías para segmentar a tus clientes en múltiples grupos?
- ¿Cuáles son algunos algoritmos de detección de edad y género que usan OpenCV?
/ <- raíz
/ \
… casa
/ \
curso de ugrad
/ / | \
… Cs101 cs112 cs113
2) Si organizamos claves en forma de árbol (con algunos ordenamientos, por ejemplo, BST), podemos buscar una clave determinada en un tiempo moderado (más rápido que la Lista vinculada y más lento que las matrices). Los árboles de búsqueda autoequilibrados, como los árboles AVL y Rojo-Negro, garantizan un límite superior de O (Logn) para la búsqueda.
3) Podemos insertar / eliminar claves en un tiempo moderado (más rápido que las matrices y más lento que las listas enlazadas sin ordenar). Los árboles de búsqueda autoequilibrados, como los árboles AVL y Rojo-Negro, garantizan un límite superior de O (Logn) para inserción / eliminación.
4) Al igual que las listas vinculadas y, a diferencia de las matrices, la implementación del puntero de los árboles no tiene un límite superior en el número de nodos, ya que los nodos se vinculan mediante punteros.
Según Wikipedia, los siguientes son los usos comunes del árbol.
1. Manipular datos jerárquicos.
2. Facilite la búsqueda de información (vea el recorrido del árbol).
3. Manipular listas ordenadas de datos.
4. Como flujo de trabajo para componer imágenes digitales para efectos visuales.
5. Algoritmos de enrutador
…………………………………………………………………………………………………………………….
Los gráficos se pueden usar para modelar muchos tipos de relaciones y procesos en sistemas físicos, biológicos, sociales y de información. Muchos problemas prácticos se pueden representar mediante gráficos.
- En informática, los gráficos se utilizan para representar redes de comunicación, organización de datos, dispositivos computacionales.
- La teoría de grafos también se usa para estudiar moléculas en química y física.
- En matemáticas, los gráficos son útiles en geometría.
- Los gráficos ponderados se utilizan para representar estructuras en las que las conexiones por pares tienen algunos valores numéricos. Ej: Red de carreteras.
- Los algoritmos de gráficos son útiles para calcular la ruta más corta en el enrutamiento.
- Mapas: encontrar el camino más corto / más barato para un automóvil de una ciudad a otra, utilizando carreteras específicas.
¿Cuál es la aplicación práctica de árboles o gráficos en estructuras de datos?
Aplicaciones de la estructura de datos de árbol – GeeksforGeeks
Aplicaciones de la estructura de datos Graph