Professional Documents
Culture Documents
4.1 rboles. 4.1.1 Definicin. 4.1.2 Representacin en memoria de rboles. 4.1.2.1 rboles generales. 4.1.2.2 rboles binarios. 4.1.3 Recorridos en un rbol binario. 4.1.3.1 Preorden. 4.1.3.2 Inorden. 4.1.3.3 Postorden. 4.1.4 Balanceo de rboles binarios. 4.1.5 Clases para la implementacin de rboles. 4.2 Grafos. 4.2.1 Definicin. 4.2.2 Tipos de grafos. 4.2.3 Representacin de grafos en memoria. 4.2.4 Clases para la implementacin de grafos.
Definicin
rbol
Un rbol es una estructura no lineal en la que cada nodo puede apuntar a uno o varios nodos. Tambin se suele dar una definicin recursiva: un rbol es una estructura en compuesta por un dato y varios rboles. Esto son definiciones simples. Pero las caractersticas que implican no lo son tanto.
* Nodo hijo: cualquiera de los nodos apuntados por uno de los nodos del rbol. En el ejemplo, 'L' y 'M' son hijos de 'G'.
* Nodo padre: nodo que contiene un puntero al nodo actual. En el ejemplo, el nodo 'A' es padre de 'B', 'C' y 'D'.
En cuanto a la posicin dentro del rbol: Nodo raz: nodo que no tiene padre. Este es el nodo que usaremos para referirnos al rbol. En el ejemplo, ese nodo es el 'A'. Nodo hoja: nodo que no tiene hijos. En el ejemplo hay varios: 'F', 'H', 'I', 'K', 'L', 'M', 'N' y 'O'. Nodo rama: aunque esta definicin apenas la usaremos, estos son los nodos que no pertenecen a ninguna de las dos categoras anteriores. En el ejemplo: 'B', 'C', 'D', 'E', 'G' y 'J'.
Un rbol en el que en cada nodo o bien todos o ninguno de los hijos existe, se llama rbol completo.
Orden: es el nmero potencial de hijos que puede tener cada elemento de rbol. De este modo, diremos que un rbol en el que cada nodo puede apuntar a otros dos es de orden dos, si puede apuntar a tres ser de orden tres, etc.
Grado: el nmero de hijos que tiene el elemento con ms hijos dentro del rbol. En el rbol del ejemplo, el grado es tres, ya que tanto 'A' como 'D' tienen tres hijos, y no existen elementos con ms de tres hijos.
Nivel: se define para cada elemento del rbol como la distancia a la raz, medida en nodos. El nivel de la raz es cero y el de sus hijos uno. As sucesivamente. En el ejemplo, el nodo 'D' tiene nivel 1, el nodo 'G' tiene nivel 2, y el nodo 'N', nivel 3. Altura: la altura de un rbol se define como el nivel del nodo de mayor nivel. Como cada nodo de un rbol puede considerarse a su vez como la raz de un rbol, tambin podemos hablar de altura de ramas. El rbol del ejemplo tiene altura 3, la rama 'B' tiene altura 2, la rama 'G' tiene altura 1, la 'H' cero, etc.
rboles generales
Intuitivamente el concepto de rbol implica una estructura en la que los datos se organizan de modo que los elementos de informacin estn relacionados entre si a travs de ramas. El rbol genealgico es el ejemplo tpico ms representativo del concepto de rbol general.
rboles binarios
Es un rbol en el que ningn nodo puede tener mas de dos subrboles. En un rbol binario, cada nodo puede tener cero, uno o dos hijos (subrboles). Se conoce el nodo de la izquierda como hijo izquierdo y el nodo de la derecha como hijo derecho.
Recorrido en profundidad
El proceso exige un camino desde la raz a travs de un hijo, al descendiente ms lejano del primer hijo antes de proseguir a un segundo hijo. En otras palabras, en el recorrido en profundidad, todos los descendientes de un hijo se procesan antes del siguiente hijo.
Recorrido en anchura
El proceso se realiza horizontalmente desde el raz a todos sus hijos, a continuacin a los hijos de sus hijos y as sucesivamente hasta que todos los nodos han sido procesados. En otras palabras, en el recorrido en anchura cada nivel se procesa totalmente antes que comience el siguiente nivel.
Preorden (NID)
Este recorrido conlleva los siguientes pasos: Recorrer la raz (N) Recorrer el subrbol izquierdo (I) Recorrer el subrbol derecho (D) REGLA. La raz se procesa antes que los subrboles izquierdo y derecho.
Inorden (IND)
Recorrer el subrbol izquierdo (I) Visitar el nodo raz (N) Recorrer el subrbol derecho (D)
Postorden (IDN)
Recorrer el subrbol izquierdo (I) Recorrer el subrbol derecho (D) Recorrer la raz (N)
grafos
*Tarea*
Fin de la presentacin