Está en la página 1de 9

TEMA: ARBOLES

Hasta ahora se han estudiado estructuras lineales estáticas y dinámicas de datos:


a un elemento solo le sigue otro elemento. Al analizar la estructura de árbol se inicia
la introducción en el concepto de estructura de ramificación entre nodos.

Los árboles representa las estructuras no-lineales y dinámicas de datos más


importantes en computación. Dinámicas, puesto que le estructura puede cambiar
durante la ejecución de un programa. No-lineales, puesto que a cada elemento del
árbol pueden seguirle varios elementos.

CONCEPTO:

Un árbol es una estructura jerárquica aplicada sobre una colección de elementos u


objetos llamados nodos; uno de los cuales es conocido como raíz. Además se crea
una relación o parentesco entre los nodos dando lugar a términos como padre, hijo,
hermano, antecesor, sucesor, etc.

Una estructura de árbol con tipo base T es:


 La estructura vacía.
 Un nodo de tipo T con un número finito de estructuras de árbol disjuntas
asociadas de tipo base T, llamadas subárboles.

Dada la similitud de las definiciones recursivas de listas y estructuras de árbol, es


evidente que la lista es una estructura de árbol en la cual cada nodo tiene a lo más
un subárbol. La lista se llama por tanto árbol degenerado.

Los árboles tienen una gran variedad de aplicaciones. Por ejemplo: se pueden
utilizar para representar fórmulas matemáticas, para organizar adecuadamente la
información, para construir un árbol genealógico, para el análisis de circuitos
eléctricos, etc.

1
CARACTERISTICAS Y PROPIEDADES DE LOS ARBOLES

1. Todo árbol que no está vacío, tiene un único nodo raíz.


2. Un nodo x es descendiente directo de un nodo y, si el nodo x es apuntado
por el nodo y. En este caso es común utilizar la expresión x es hijo de y.
3. Un nodo x es antecesor directo de un nodo y, si el nodo x apunta al nodo
y. En este caso es común utilizar la expresión x es padre de y.
4. Se dice que todos los nodos que son descendientes directos (hijos) de un
mismo nodo (padre), son conocidos como hermanos.
5. Todo nodo que no tiene ramificaciones (hijos), se conoce con el nombre
de terminal u hoja.
6. Todo nodo que no es raíz, ni terminal, se conoce con el nombre de nodo
interior.
7. Grado es el número de descendientes directos de un determinado nodo.
8. Grado del árbol es el máximo grado de todos los nodos del árbol.
9. Nivel es el número de arcos que deben ser recorridos para llegar a un
determinado nodo. Por definición la raíz tiene nivel 1.
10. Altura del árbol es el máximo número de niveles de todos los nodos del
árbol.

LONGITUD DE CAMINO

Se define la longitud de camino x, como el número de arcos que deben ser


recorridos para llegar desde la raíz al nodo x. Por definición la raíz tiene longitud de
camino 1, sus descendientes directos longitud 2 y así sucesivamente.

Longitud de camino interno (LCI)

Es la suma de las longitudes de camino de todos los nodos del árbol. Puede
calcularse por medio de la fórmula:

𝐿𝐶𝐼 = ∑ 𝑛𝑖 ∗ 𝑖
𝑖=1
Donde i representa el nivel del árbol
h representa la altura del árbol
ni representa el número de nodos en el nivel i

La media de la LCI se calcula dividiendo la LCI entre el número de nodos en el árbol.


Se expresa:
MLCI = LCI / N
Y significa el número de arcos que deben ser recorridos en promedio para llegar
partiendo desde la raíz, a un nodo cualquiera del árbol.

2
Árbol extendido:

Es aquel en el que el número de hijos de cada nodo es igual al grado del árbol. Si
alguno de los nodos del árbol no cumple con esta condición debe incorporársele al
mismo nodos especiales, tantos como sean necesarios para satisfacer la condición.

Nodo especial:

Tiene como objetivo reemplazar las ramas vacías o nulas, no pueden tener
descendientes y normalmente se representan con un cuadrado.

Longitud de camino externo (LCE)

Es la suma de las longitudes de camino de todos los nodos especiales del árbol. Se
calcula por medio de la fórmula:
ℎ+1

𝐿𝐶𝐸 = ∑ 𝑛𝑒𝑖 ∗ 𝑖
𝑖=2
Donde i representa el nivel del árbol
h representa la altura del árbol
nei representa el número de nodos especiales en el nivel i

La media de la LCE se calcula dividiendo la LCE entre el número de nodos


especiales en el árbol. Se expresa:

MLCE = LCE / NE

Y significa el número de arcos que deben ser recorridos en promedio para llegar
partiendo desde la raíz, a un nodo especial cualquiera del árbol.

ÁRBOLES BINARIOS

Un árbol ordenado es aquel en el que las ramas de los nodos del árbol están
ordenadas. Los árboles ordenados de grado dos representan una estructura de
datos muy importante conocida como árbol binario.

En un árbol binario cada nodo puede tener como máximo dos subárboles, y siempre
es necesario distinguir entre el subárbol izquierdo y el subárbol derecho.

Formalmente se define un árbol binario de tipo T como una estructura homogénea


que es la concatenación de un elemento de tipo T, llamada raíz, con dos árboles
binarios disjuntos, llamados subárbol izquierdo y derecho de la raíz.

Una forma particular de árbol binario es la estructura vacía.

3
Dentro de sus aplicaciones está representar una estructura en la cual es posible
tomar decisiones con dos opciones en distintos puntos de un proceso, para
representar un árbol genealógico, para representar la historia de un campeonato de
tenis, para representar expresiones algebraicas construidas con operadores
binarios, etc.

Ejemplos:

a. Árbol binario de búsqueda


5
5

4 7

1
6 9

8
b. Representación de una expresión algebraica

*
5

4 -

c. Árbol genealógico 6 9

Juan Pérez Ramos

Juan Pérez Cruz Martha Ramos León

Carlos Pérez Ruiz María Cruz Santos Pedro Ramos Ana León Cerda
Lara

4
Los árboles con grado mayor que dos se denominan árboles multicamino.

T B Z

G N U

O E K M L H

Árboles binarios distintos, similares y equivalentes.

Dos árboles binarios son distintos cuando sus estructuras son diferentes.

6 6
5 5

4 9 4 2

2 5 8

Dos árboles binarios son similares cuando sus estructuras son idénticas, pero la
información que contienen sus nodos difiere entre sí.
6 2
5 5

4 2 3 7

8 4

Dos árboles binarios son equivalentes cuando son similares y además los nodos
contienen la misma información.

6
6
5
5

4 9
4 9

2 5
2 5

5
Árbol binario completo

Se define como un árbol en el que todos sus nodos, excepto los del último nivel,
tienen dos hijos; el subárbol izquierdo y el subárbol derecho.

Ejemplo:
5
5

4 7

1 8 6 9

Para calcular el número de nodos de un árbol binario completo de altura h, se usa


la fórmula:

Num_NodosABC = 2h – 1

Donde ABC significa árbol binario completo


h es la altura del árbol

Representación de árboles generales como árboles binarios

Los pasos que se deben aplicar para lograr la conversión del árbol general a árbol
binario son los siguientes:

1. Deben enlazarse los hijos de cada nodo en forma horizontal (los


hermanos).
2. Deben enlazarse en forma vertical el nodo padre con el hijo que se
encuentra más a la a izquierda. Además, debe eliminarse el vínculo de
ese padre con el resto de sus hijos.
3. Debe rotarse el diagrama resultante 45o hacia la derecha, y así obtendrá
el árbol binario correspondiente.

Ejemplo:
P

T B Z

G N U

O E K M L H

6
P

T B Z

G N U

O E K M L H

O
B
E

N
K
Z

7
Representación de un bosque como un árbol binario.

Bosque: Representa un conjunto normalmente ordenado de uno o más árboles


generales.

Los pasos que se deben aplicar para lograr la conversión del bosque a árbol binario
son los siguientes:

1. Deben enlazarse en forma horizontal las raíces de los distintos árboles


generales.
2. Deben enlazarse los hijos de cada nodo en forma horizontal (los
hermanos).
3. Deben enlazarse en forma vertical el nodo padre con el hijo que se
encuentra más a la a izquierda. Además, debe eliminarse el vínculo de
ese padre con el resto de sus hijos.
4. Debe rotarse el diagrama resultante 45o hacia la derecha, y así obtendrá
el árbol binario correspondiente.

Ejemplo: H
N
P

I F
G
T B Z

M A R C U D
O E K

8
P N H

T B Z G I F

O E K M A R C U D

B
N
Z

H
O

E I

K
M

A
F
R

También podría gustarte