1 minute read

Árboles, Heap

Next Article
Método Burbuja

Método Burbuja

• Árboles: Los árboles se usan para representar relaciones entre elementos, para implementar operaciones de búsqueda, inserción y eliminación de forma rápida y para optimizar el uso de la memoria.

o El sistema de archivos de un ordenador: Organiza los archivos y las carpetas en una estructura de árbol, donde el nodo raíz es el disco duro y los nodos hijos son las carpetas y los archivos que contiene.

Advertisement

o El lenguaje HTML: Se usa para crear páginas web y se basa en una estructura de árbol, donde el nodo raíz es la etiqueta <html> y los nodos hijos son las etiquetas que definen el contenido y el formato de la página.

• Heap: Es un tipo especial de árbol binario que cumple con la propiedad de que el valor del nodo padre es mayor o menor que el valor de sus hijos. Se usa para implementar una cola de prioridad.

o Heap sort: El algoritmo de ordenamiento se basa en construir un max-heap o un min-heap con los elementos del vector a ordenar y luego extraer sucesivamente el elemento raíz del heap y colocarlo al final de un vector.

o Algoritmo Dijkstra: Se usa para encontrar el camino más corto entre dos nodos en un grafo ponderado. El algoritmo se basa en usar un min-heap para almacenar los nodos con su distancia al nodo inicial y extraer el nodo con la menor distancia en cada iteración.

Conjuntos

Un conjunto es una forma de guardar datos que no tienen orden ni se repiten. Se puede hacer con diferentes formas de guardar datos, como listas, tablas o árboles. Un conjunto se usa para guardar y usar datos que no importa dónde están ni cuántas veces están, sino si están o no en el conjunto.

4, 3, 2}

Conjuntos disjuntos en árboles

Los conjuntos disjuntos son una estructura de datos que permite agrupar elementos en subconjuntos que no se solapan. Es decir, cada elemento pertenece a un solo subconjunto. Los conjuntos disjuntos se pueden usar en árboles para representar relaciones entre nodos, como la pertenencia a un mismo componente conexo o la distancia entre dos nodos.

Por ejemplo, el algoritmo de Kruskal para encontrar el árbol de expansión mínima de un grafo usa conjuntos disjuntos para determinar si dos vértices están conectados o no.

This article is from: