Ar Boles

También podría gustarte

Está en la página 1de 5

Teoría General de Árboles

Los árboles son, sin duda, una de las estructuras de datos no lineales, empleadas
en informática, tanto para resolver problemas de hardware como de software. Los
árboles de directorios son organizaciones bastante empleadas por cualquier usuario
o programador de una computadora. De igual manera cumplen un buen papel en la
toma de decisiones, válido como árbol de decisiones.
Los árboles genealógicos y los organigramas son ejemplos comunes. Entre otras
aplicaciones, los árboles se emplean para analizar circuitos eléctricos y para
representar la estructura de fórmulas matemáticas, así como para organizar la
información de bases de datos, para representar la estructura sintáctica de un
programa fuente en compiladores y para la toma de decisiones.

Los árboles son estructuras de datos muy similares a las listas


doblemente enlazadas, en el sentido que tienen punteros que apuntan a otros
elementos, pero no tienen una estructura lógica de tipo lineal o secuencial como
aquellas, sino ramificada. Tienen aspecto de árbol, de ahí su nombre.
Su estudio desde el punto de vista matemático pertenece a la teoría de grafos;
desde el punto de vista informático son estructuras de datos, lo que significa que
cada elemento, denominado nodo u hoja, contiene un valor. Su estudio corresponde
a la teoría de bases de datos, y en esta terminología, los nodos que dependen de
otros se denominan hijos. Cada hoja puede tener un máximo de hijos, si no tiene
ninguno se dice que es un nodo terminal.
Un árbol es una estructura de datos no lineal en la que cada nodo puede apuntar a
uno o varios nodos. También se suele dar una definición recursiva: un árbol es una
estructura compuesta por un dato y varios árboles. Esto son definiciones simples.
Fig. 1: La imagen muestra la diferencia entra las estructuras de datos líneas y las
no lineales como lo son los Árboles.

Datos importantes de los Árboles


Para comprender mejor que es un árbol comenzaremos explicando cómo está
estructurado.
Nodos: Se le llama Nodo a cada elemento que contiene un Árbol.
Nodo Raíz: Se refiere al primer nodo de un Árbol, Solo un nodo del Árbol puede ser
la Raíz.
Nodo Padre: Se utiliza este término para llamar a todos aquellos nodos que tiene
al menos un hijo.
Nodo Hijo: Los hijos son todos aquellos nodos que tiene un padre.
Nodo Hermano: Los nodos hermanos son aquellos nodos que comparte a un
mismo padre en común dentro de la estructura.
Nodo Hoja: Son todos aquellos nodos que no tienen hijos, los cuales siempre se
encuentran en los extremos de la estructura.
Nodo Rama: Estos son todos aquellos nodos que no son la raíz y que además
tiene al menos un hijo.

Fig. 2: La imagen muestra de forma gráfica cuales son los nodos Raíz, Rama,
Hoja.

Fig.3: La siguiente imagen muestra de forma gráfica los nodos Padre, Hijo y
Hermanos
Los arboles además de los nodos tiene otras propiedades importantes que son
utilizadas en diferentes ámbitos los cuales son:
Nivel: Nos referimos como nivel a cada generación dentro del árbol. Por ejemplo,
cuando a un nodo hoja le agregamos un hijo, el nodo hoja pasa a ser un nodo rama
pero además el árbol crece una generación por lo que el Árbol tiene un nivel más.
Cada generación tiene un número de Nivel distinto que las demás generaciones.

 Un árbol vacío tiene 0 niveles


 El nivel de la Raíz es 1
 El nivel de cada nodo se calculado contando cuantos nodos existen sobre el,
hasta llegar a la raíz + 1, y de forma inversa también se podría, contar
cuantos nodos existes desde la raíz hasta el nodo buscado + 1.

Altura: Le llamamos Altura al número máximo de niveles de un Árbol.

Fig. 4: En la imagen se muestran los Niveles y la Altura de un Árbol.

La altura es calculado mediante recursividad tomando el nivel mas grande de los


dos sub-árboles de forma recursiva de la siguiente manera:
altura = max(altura(hijo1), altura(hijo2),altura(hijoN)) + 1
Grado: El grado se refiere al número mayor de hijos que tiene alguno de los nodos
del Árbol y esta limitado por el Orden, ya que este indica el número máximo de hijos
que puede tener un nodo.

Fig. 7: En la imagen podemos apreciar un Árbol con grado 2(Izquierda) y un otro


con grado 3(Derecha).
El grado se calcula contando de forma recursiva el número de hijos de cada sub-
árbol hijo y el numero de hijos del nodo actual para tomar el mayor, esta operación
se hace de forma recursiva para recorrer todo el árbol.
grado = max(contarHijos(hijo1),contarHijos(hijo2), contarHijos(hijoN),
contarHijos(this))

También podría gustarte