Arboles Extructurados
Árbol (informática)
1
Árbol (informática)
Este artículo o sección necesita referencias que aparezcan en una publicación acreditada, como revistas especializadas, monografías, prensa diaria o páginas de Internet fidedignas. [1] Puedes añadirlas así o avisar al autor principal del artículo en su página de discusión pegando: {{subst: Aviso referencias|Árbol(informática)}} ~~~~
En ciencias de la informática, un árbol es una estructura de datos ampliamente usada que imita la forma de un árbol (un conjunto de nodos conectados). Un nodo es la unidad sobre la que se construye el árbol y puede tener cero o más nodos hijos conectados a él. Se dice que un nodo es padre de un nodo si existe un enlace desde hasta (en ese caso, también decimos que es hijo de ). Sólopuede haber un único nodo sin padres, que llamaremos raíz. Un nodo que no tiene hijos se conoce como hoja. Los demás nodos (tienen padre y uno o varios hijos) se les conoce como rama.
Definición
Formalmente, podemos definir un árbol de la siguiente forma: • Caso base: un árbol con sólo un nodo (es a la vez raíz del árbol y hoja). • Un nuevo árbol a partir de un nodo una de las raíces de losnodo , los nodos y árboles de raíces con y cada nodos tiene como raíz el y el conjunto de nodos hoja está formado por la unión
elementos cada uno, puede construirse estableciendo una relación padre-hijo entre árboles. El árbol resultante de son los hijos de
de los conjuntos hojas iniciales. A cada uno de los árboles se les denota ahora sub árboles de la raíz. Una sucesión de nodos del árbol,de forma que entre cada dos nodos consecutivos de la sucesión haya una relación de parentesco, decimos que es un recorrido árbol.
Tipos de árboles
Ejemplo de árbol (binario).
* Árboles Binarios
* Árbol de búsqueda binario auto-balanceable
* Árboles AVL
* Árboles Rojo-Negro
* Árbol AA
* Árboles Multicamino
*Árboles B (Arboles de búsqueda multicamino autobalanceados)
* Árbol-B+
* Árbol-B*
Operaciones de árboles. Representación
Las operaciones comunes en árboles son:
* Enumerar todos los elementos.
* Buscar un elemento.
* Dado un nodo, listar los hijos (si los hay).
* Borrar un elemento.
* Eliminar un subárbol (algunas veces llamada podar).
* Añadir unsubárbol (algunas veces llamada injertar).
* Encontrar la raíz de cualquier nodo.
Por su parte, la representación puede realizarse de diferentes formas. Las más utilizadas son:
* Representar cada nodo como una variable en el heap, con punteros a sus hijos y a su padre.
* Representar el árbol con un array donde cada elemento es un nodo y las relaciones padre-hijo vienen dadas por la posicióndel nodo en el array.
Uso de los árboles
Usos comunes de los árboles son:
* Representación de datos jerárquicos.
* Como ayuda para realizar búsquedas en conjuntos de datos (ver también: algoritmos de búsqueda en Árboles).
Véase también
* Partición binaria del espacio
* Heap
* Árbol (teoría de grafos)
* Estructura de un árbol
* Árbol exponencial
Algoritmos debúsqueda en árboles
* Recorrido de árboles
* Búsqueda en profundidad
* Búsqueda en anchura
* Algoritmo de búsqueda A*
Árboles
Una de las estructuras de datos más importantes en programación es el árbol. Pueden usarse los
árboles para representar la información en una estructura jerárquica. Los árboles pueden
procesarse en forma recursiva y son muy adaptables a pruebas matemáticas.El estudio de
árboles ilustra las conexiones entre varios temas de la matemática discreta y ofrece
oportunidades para aprovechar la matemática formal en la programación práctica.
La idea de estructura jerárquica es muy usada en la práctica. Por ejemplo, los libros son
a menudo organizados como una sucesión de capítulos cada uno de los cuales son una sucesión
de secciones que...
Regístrate para leer el documento completo.