Vous êtes sur la page 1sur 41

Instituto Tecnolgico Superior de Poza Rica, Veracruz Materia: Estructura de Datos Nombre del Alumno: Zaida Paulina Lozano

Aldana Carrera: Ingeniera en Sistemas Computacionales Semestre: 3 Grupo:A

Maestro: Ing. Juan de Dios Padrn Hinojosa


Ciclo escolar: 2011-2012

Un recorrido de un rbol binario requiere que cada nodo del rbol sea procesado o visitado una vez y solo una vez en una secuencia predeterminada. Existen 2 enfoques general para la secuencia de recorrido: profundidad y anchura.

Se dice que es un proceso que exige un camino desde la raz atraves de un hijo, al descendiente mas lejano del primero hijo antes de proseguir a un segundo hijo. Todos los descendientes de un hijo se procesan antes del siguiente.

Se dice que el proceso se realiza horizontalmente desde la raz a todos sus hijos, a continuacin a los hijos e sus hijos y as sucesivamente hasta que todos los nodos han sido procesados. Cada nivel se procesa totalmente antes de que comience el siguiente nivel.

El recorrido de un rbol supone visitar cada nodo solo una vez. Dado un rbol binario que consta de una raz, un subrbol izquierdo y un subrbol derecho, pueden definir 3 tipos de secuencias de recorrido en profundidad.
a) Recorrido Pre orden b) Recorrido en Orden c) Recorrido Postorden

El recorrido pre orden (NID) con lleva los siguientes pasos, en los que la raz va antes que los subrboles: 1. Recorrer el raz (N) 2. Recorrer el subrbol izquierdo (I) en pre orden 3. Recorrer el subrbol derecho (D) en pre orden.

Subrbol izquierdo

Subrbol derecho

Primero, se procesa la raz de los arboles, a continuacin el subrbol izquierdo y a continuacin el subrbol derecho. Para procesar el subrbol izquierdo, se hace una llamada recursiva al procedimiento pre orden y luego se hace lo mismo con el subrbol derecho

El algoritmo recursivo correspondiente para un rbol T es:

Si T no es vaco entonces inicio ver los datos en el raz de T Pre orden (subrbol izquierdo del raz de T) Pre orden (subrbol derecho del raz de T) fin

Regla: El recorrido pre orden, el nodo raz se procesa antes que los subrboles izquierdo y derecho

A 1 B C 5 E F G 7

2
D

Camino A,B,D,E,C,F,G

El recorrido en orden (IND) procesa el subrbol izquierdo, despus el raz y a continuacin el subrbol derecho. El significado de in es que la raz se procesa entre los subrboles. Si el rbol no esta vaco, el mtodo implica los siguientes pasos: 1. Recorrer el subrbol izquierdo (I) en inorden 2. Visitar el nodo raz (N) 3. Recorrer el subrbol derecho (D) en inorden

Subrbol izquierdo

Subrbol derecho

El algoritmo recursivo correspondiente para un rbol T es:

Si T no es vaco entonces inicio En orden (subrbol izquierdo del raz T) ver los datos en el raz de T En orden (subrbol derecho del raz de T) fin

Regla: En el recorrido en orden, el nodo raz se procesa a continuacin del subrbol izquierdo y despus del derecho.

A 4 B C 6 E F G 7

2
D

Camino D,B,E,A,F.C,G

El recorrido Postorden (IDN) procesa nodo raz (post), despus de que los subrboles izquierdo y derecho se han procesado. Se comienza situndose en la hoja mas a la izquierda y se procesa. A continuacin se procesa su subrbol derecho. Por ultimo se procesa el nodo raz. Las etapas del algoritmo son: 1. Recorrer el subrbol izquierdo (I) en Postorden 2. Recorrer el subrbol derecho (D) en inorden 3. Visitar el nodo raz (N)

Subrbol izquierdo

Subrbol derecho

El algoritmo recursivo correspondiente para un rbol T es:

Si T no es vaco entonces inicio Post orden (subrbol izquierdo del raz T) Post orden (subrbol derecho del raz de T) ver los datos en el raz de T fin

Regla: En el recorrido post orden, el nodo raz se procesa despus del subrbol izquierdo y despus del derecho.

A 7 B C 6 E F G 5

3
D

Camino D,E,B,F,G,C,A

Deducir el recorrido en pre orden


+

Deducir el recorrido en orden


+ d

+ c
+ b a

Deducir el recorrido en post orden


/

La profundidad de un rbol binario es una caracterstica que se necesita conocer con frecuencia durante el desarrollo de una aplicacin con arboles.

Un rbol binario de bsqueda es aquel que dado un nodo, todos los datos del subrbol izquierdo son menores que los datos de ese nodo, mientras que todos los datos del subrbol derecho son mayores que sus propios datos.

rbol binario de bsqueda


55 30 75

41

85

30 menor que 55 41 mayor que 30 75 mayor que 55 85 mayor que 75 4 menor que 30

Construir un rbol binario de bsqueda para almacenar los datos 1,3,4,5,6,7,8,9,10


5 4 7

10

Un rbol binario de bsqueda se puede utilizar cuando se necesita que la informacin se encuentre rpidamente. Un ejemplo de rbol binario que se estudia a continuacin es el que cada nodo contiene informacin relativa a una persona. Cada persona se identifica con su nombre y el numero de matricula en su universidad. (dato entero)

Creacin de un nodo
El constructor del nodo tiene como entrada los datos correspondientes a la persona que se presenta, es decir, a un numero de matricula y el nombre. Inicializa las referencias a rama izquierda y derecha null, de tal forma que el nodo se crea como hoja. Public Nodo(int mat, String nom) { numMat = mat; nombre = nom; izqda = drcha = null; }