You are on page 1of 18

rboles

Definicin
Un rbol dirigido es una estructura: Jerrquica porque los componentes estn a distinto nivel. Organizada porque importa la forma en que est dispuesto el contenido. Dinmica porque su forma, tamao y contenido pueden variar durante la ejecucin. Un rbol puede ser: vaco, Una raz + subrboles.
2

Representacin de un rbol.
Mediante diagramas de Venn
a b e f
a

Mediante crculos y flechas


e

Mediante parntesis anidados:

( a ( b (e,f), c, d ) )
3

Conceptos Bsicos
Si hay un camino de A hasta B, se dice que A es

antecesor de B, y que B es sucesor de A. Padre es el antecesor inmediato de un nodo Hijo, cualquiera de sus desc}ientes inmediatos. Descendiente de un nodo, es cualquier sucesor de dicho nodo. Hermano de un nodo, es otro nodo con el mismo padre. Generacin, es un conjunto de nodos con la misma profundidad.
4

Conceptos Bsicos (cont.)


Raz es el nodo que no tiene ningn predecesor (sin

padre). Hoja es el nodo que no tiene sucesores (sin hijos) (Terminal). Los que tienen predecesor y sucesor se llaman nodos interiores. Rama es cualquier camino del rbol. Bosque es un conjunto de rboles desconectados. Nivel o profundidad de un nodo, es la longitud del camino desde la raz hasta ese nodo. El nivel puede de}irse como 0 para la raz y nivel (predecesor)+1 para los dems nodos.
5

Conceptos Bsicos (cont.)


Los nodos de la misma generacin tienen el

mismo nivel. Grado de un nodo, es el nmero de flechas que salen de ese nodo (hijos). El nmero de las que entran siempre es uno. Grado de un rbol, es el mayor grado que puede hallarse en sus nodos. Longitud del camino entre 2 nodos: es el nmero de arcos que hay entre ellos.
6

Conceptos Bsicos (cont.)


Raz hijo
Padre Hermano

Subrbol

hoja

Nivel de profundidad = 7 Grado de un nodo = 3 Grado del rbol = 3

Tipos de rboles
Un rbol ordenado: Es aquel en el que las ramas de los nodos estn ordenadas. Los de grado 2 se llaman rboles binarios. Cada rbol binario tiene un subrbol izquierda y subrbol derecha.
+

A B C
/

^ 3.5 D
8

Tipos de rboles (cont.)


rboles de expresin Representan un orden de ejecucin
+

*
+

*
A B C

*
D

12

(A* B) + C * D + E

(7 + 12) * (-9) -171

Tipos de rboles (cont.)


rboles similares: Los que tienen la misma

estructura (forma)
1 2 3
4

a
b
7

e
d

6
8 9

f
h i

rboles Equivalentes: Son los rboles similares y

sus nodos contienen la misma informacin. rboles n-ario: Es un rbol ordenado cuyos nodos tiene N subrboles, y donde cualquier nmero de subrboles puede ser rboles vacos

10

Tipos de rboles (cont.)


rbol binario completo: Es un rbol en el que todos sus nodos, excepto los del ultimo nivel, tienen dos hijos.

Nmero de nodos en un rbol binario completo = 2h 1 (en el ejemplo h = 4, 15) esto nos

ayuda a calcular el nivel de rbol necesario para almacenar los datos de una aplicacin.

11

rboles Binarios de Bsqueda (ABB)


Udem OT 2005

12

rboles Binarios de Bsqueda


Un rbol es un ABB si

ste es binario y sus nodos son subrboles de bsqueda binarios y contienen informacin ordenada de tal que todos los elementos a la izquierda de la raz son menores a la raz y todos lo elementos a la derecha de la raz son mayores a la raz.
13

Caractersticas de un ABB
Todos los nodos a la izquierda son menores

al padre. Todos los nodos a la derecha son mayores al padre. Y solo pueden tener 2 hijos a lo mucho.
50 40 26 8 34 42 45 68 85 88 95 102 100 105
14

90 110 110

Conversin de un rbol general en un rbol binario


Los hermanos se enlazan en forma horizontal (lineal) Se enlaza en forma vertical el padre con el hijo que

se encuentra mas a la izquierda y se elimina el enlace de este padre con los dems hijos. Se rota el diagrama resultante 45 grados hacia la izquierda.

15

Conversin de un rbol general en un rbol binario (cont.)


A
B C D

=
J O K

D H N I J O K

E
L

G
M

E L

F M

H N

A B E L F que da as

C G
M N

D
H I J O K
16

Representacin de un rbol binario en la memoria.


Cada noto tiene la siguiente forma:

izq info der

Raz R A D C E
17

Clase nodo de un ABB


Class Nodo{ nodo izq; nodo der; int dato; }

18

You might also like