Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Caso base: un rbol con slo un nodo (es a la vez raz del rbol y hoja).
Un nuevo rbol a partir de un nodo nr y k rboles
de races
n1, n2,..nk conN1, N2,.Nk elementos cada uno, puede
construirse estableciendo una relacin padre-hijo entre nr y cada una de las
races de los k rboles. El rbol resultante N=1+N1+.Nk de nodos
tiene como raz el nodo nr, los nodos son los hijos de nr y el conjunto de
nodos hoja est formado por la unin de los k conjuntos hojas inciales. A
cada uno de los rboles Ai se les denota ahora subrboles de la raz.
Una sucesin de nodos del rbol, de forma que entre cada dos nodos
consecutivos de la sucesin haya una relacin de parentesco, decimos que es un
recorrido rbol. Existen dos recorridos tpicos para listar los nodos de un rbol:
primero en profundidad y primero en anchura. En el primer caso, se listan los
nodos expandiendo el hijo actual de cada nodo hasta llegar a una hoja, donde se
vuelve al nodo anterior probando por el siguiente hijo y as sucesivamente. En el
segundo, por su parte, antes de listar los nodos de nivel n + 1 (a distancia n + 1
aristas de la raz), se deben haber listado todos los de nivel n. Otros recorridos
tpicos del rbol son preorden, postorden e inorden:
El recorrido en preorden, tambin llamado orden previo consiste en
recorrer en primer lugar la raz y luego cada uno de los hijos en orden
previo.
El recorrido en inorden, tambin llamado orden simtrico (aunque este
nombre slo cobra significado en los rboles binarios) consiste en recorrer
en primer lugar A1, luego la raz y luego cada uno de los hijos en orden
simtrico.
El recorrido en postorden, tambin llamado orden posterior consiste en
recorrer en primer lugar cada uno de los hijos en orden posterior y por
ltimo la raz.
Finalmente, puede decirse que esta estructura es una representacin del concepto
de rbol en teora de grafos. Un rbol es un grafo conexo y acclico 180pxBinary_tree_%28oriented_digraph%29.png
4.1.3
En este tipo de recorrido se realiza cierta accin (quizs simplemente imprimir por
pantalla el valor de la clave de ese nodo) sobre el nodo actual y posteriormente se
trata el subrbol izquierdo y cuando se haya concluido, el subrbol derecho. En el
rbol de la figura el recorrido en preorden sera: 2, 7, 2, 6, 5, 11, 5, 9 y 4.
Void pre orden (t rbol *a)
{
If (a! = NULL) {
Tratar (a); //Realiza una operacin
preorden(a->hDerecho);
en nodo
preorden(a->hIzquierdo);
}
}
Implementacin en pseudocdigo de forma iterativa:
Push(s, NULL); //insertamos en una pila (stack) el valor NULL, para asegurarnos
de que est vaca push(s, raz); //insertamos el nodo raz
MIENTRAS (s <> NULL) HACER
p = pop(s); //sacamos un elemento de la pila
Tratar (p); //realizamos operaciones sobre el nodo p
SI (I (p) <> NULL) //preguntamos si p tiene rbol derecho
ENTONCES push(s,D (p));
FIN-SI
180px-Binary_tree_%28oriented_digraph%29.png
SI (D (p) <> NULL) //preguntamos si p tiene rbol izquierdo
ENTONCES push(s,I(p));
FIN-SI
FIN-MIENTRAS
rbol AVL es un tipo especial de rbol binario ideado por los matemticos rusos
Adelson-Velskii y Landis. Fue el primer rbol de bsqueda binario autobalanceable que se ide. El rbol AVL toma su nombre de las iniciales de los
apellidos de sus inventores, Adelson-Velskii y Landis. Lo dieron a conocer en la
publicacin de un artculo en 1962: "An algorithm for the organization of
information" ("Un algoritmo para la organizacin de la informacin").
Los rboles AVL estn siempre equilibrados de tal modo que para todos los
nodos, la altura de la rama izquierda no difiere en ms de una unidad de la altura
de la rama derecha. Gracias a esta forma de equilibrio (o balanceo), la
complejidad de una bsqueda en uno de estos rboles se mantiene siempre en
orden de complejidad O (log n). El factor de equilibrio puede ser almacenado
directamente en cada nodo o ser computado a partir de las alturas de los
subrboles.
Los rboles binarios tambin pueden ser almacenados como una estructura de
datos implcita en arreglos, y si el rbol es un rbol binario completo, este mtodo
no desaprovecha el espacio en memoria. Tomaremos como notacin la siguiente:
si un nodo tiene un ndice i, sus hijos seencuentran en ndices 2i + 1 y 2i + 2,
mientras que sus padres (si los tiene) se encuentra en el ndice(partiendo de que
la raz tenga ndice cero). Este mtodo tiene como ventajas el tener almacenados
los datos de forma ms compacta y por tener una forma ms rpida y eficiente de
localizar los datos en particular durante un preoden transversal. Sin embargo,
desperdicia mucho espacio en memoria.
Los grafos son artefactos matemticos que permiten expresar de una forma
visualmente muy sencilla y efectiva las relaciones que se dan entre elementos de
muy diversa ndole. Un grafo simple est formado por dos conjuntos:
stella.gif
Un conjunto V de puntos llamados vrtices o nodos.
Un conjunto de pares de vrtices que se llaman aristas o arcos y que indican qu
nodos estn relacionados. De una manera ms informal podemos decir que un
grafo es un conjunto de nodos con enlaces entre ellos, denominados aristas o
arcos.
Dirigidos: son aquellos en los cuales los lados estn orientados (flechas). Cada
lado se representa entre ngulos, separando sus vrtices por comas y teniendo en
cuenta <Vi,Vj>!=<Vj ,Vi>. En grafos dirigidos, para cada lado <A, B>, A, el cual es
el vrtice origen, se conoce como la cola del lado y B, el cual es el vrtice destino,
se conoce como cabeza del lado.
CIRCUITO DE HAMILTON