Vous êtes sur la page 1sur 4

1

rboles
Un rbol se define como una coleccin de nodos organizados en forma recursiva. Cuando hay 0 nodos se dice que el rbol esta vaco, en caso contrario el rbol consiste en un nodo denominado raz, el cual tiene 0 o ms referencias a otros rboles, conocidos como subrboles. Las races de los subrboles se denominan hijos de la raz, y consecuentemente la raz se denomina padre de las races de sus subrboles. Una visin grfica de esta definicin recursiva se muestra en la siguiente figura:

Los nodos que no poseen hijos se denominan hojas. Dos nodos que tienen el padre en comn se denominan hermanos. Un camino entre un nodo n1 y un nodo nk est definido como la secuencia de nodos n1, n2, ..., nk tal que ni es padre de ni+1, 1 <= i < k. El largo del camino es el nmero de referencias que componen el camino, que para el ejemplo son k-1. Existe un camino desde cada nodo del rbol a s mismo y es de largo 0. Ntese que en un rbol existe un nico camino desde la raz hasta cualquier otro nodo del rbol. A partir del concepto de camino se definen los conceptos de ancestro y descendiente: un nodo n es ancestro de un nodo m si existe un camino desde n a m; un nodo n es descendiente de un nodo m si existe un camino desde m a n. Se define la profundidad del nodo nk como el largo del camino entre la raz del arbol y el nodo nk. Esto implica que la profundidad de la raz es siempre 0. La altura de un nodo nk es el mximo largo de camino desde nk hasta alguna hoja. Esto implica que la altura de toda hoja es 0. La altura de un rbol es igual a la altura de la raz, y tiene el mismo valor que la profundidad de la hoja ms profunda. La altura de un rbol vaco se define como -1. La siguiente figura muestra un ejemplo de los conceptos previamente descritos:

A es la raz del rbol. A es padre de B, C y D. E y F son hermanos, puesto que ambos son hijos de B. E, J, K, L, C, P, Q, H, N y O son las hojas del rbol. El camino desde A a J es nico, lo conforman los nodos A-B-F-J y es de largo 3. D es ancestro de P, y por lo tanto P es descendiente de D. L no es descendiente de C, puesto que no existe un camino desde C a L. La profundidad de C es 1, de F es 2 y de Q es 4. La altura de C es 0, de F es 1 y de D es 3. La altura del rbol es 4 (largo del camino entre la raz A y la hoja ms profunda, P o Q).

rboles binarios Un rbol binario es un rbol en donde cada nodo posee 2 referencias a subrboles (ni ms, ni menos). En general, dichas referencias se denominan izquierda y derecha, y consecuentemente se define el subrbol izquierdo y subrbol derecho del arbol.

En este caso, la implementacion del nodo de un rbol binario es como sigue: class NodoArbolBinario

{ Object elemento; NodoArbolBinario izq; NodoArbolBinario der; } Los nodos en s que conforman un rbol binario se denominan nodos internos, y todas las referencias que son null se denominan nodos externos.

Propiedades de los rboles binarios Propiedad 1: Si se define i = nmero de nodos internos, e = nmero de nodos externos, entonces se tiene que: e = i+1 Demostracin: induccin sobre i (ejercicio). Propiedad 2: Sea n = nmero de nodos internos. Se define:

In = suma del largo de los caminos desde la raz a cada nodo interno (largo de caminos internos). En = suma del largo de los caminos desde la raz a cada nodo externo (largo de caminos externos). En = In+2n

Se tiene que: Demostracin: induccin sobre n (ejercicio).

Propiedad 3: Cuntos rboles binarios distintos se pueden construir con n nodos internos?
n bn 0 1 1 1 2 2 3 5

bn?

Por ejemplo: b4 = b0*b3 + b1*b2 + b2*b1 + b3*b0 = 5 + 2 + 2 + 5 = 14. Este tipo de ecuaciones se puede resolver y la solucin es la siguiente:

La serie de numeros que genera bn se conoce como nmeros de Catalan. Asintticamente:

Vous aimerez peut-être aussi