ÁRBOLES Los Los árbole árboless son estruc estructur turas as no linea lineales les que permite permiten n la repre represen sentac tación ión de datos datos relacionados entre sí.,
Los elementos que conforman a un árbol son: nodos y enlaces. enlaces. Un árbol se define como como un conjunto de nodos nodos disjuntos relacionados relacionados entre sí. En un árbol árbol se establecen enlaces enlaces jerárquicos jerárquicos entre los nodos. nodos. El nodo que se encuentra en la jerarquía más alta (al inicio del árbol) o primer nivel se le denomina raíz. Los nodos que se encuentran en el siguiente nivel se les denomina hojas y el enlace entre el nodo raíz y los nodos hojas se les l es denomina rama. Un árbol puede estar constituido de un solo nodo – el nodo raíz o de “n” nodos relacionados entre si. Los Los nodo nodoss que que se encu encuen entr tran an en el segu segund ndo o nive nivell y en nive nivele less infe inferi rior ores es se denominan ramas, hojas o hijos. hijos . Un nodo rama, que a su vez tiene relacionados otros nodos ramas en el siguiente nivel se le puede denominar también nodo padre y a los nodos del nivel inferior se les puede denominan nodos hijos. Un nodo sin sucesores es un nodo terminal. terminal . Si el árbol T contiene una una raíz, los árboles T1 y T2 se llaman respectivamente respectivamente sub-árbol izquierdo y sub-árbol derecho de R (raíz). Si T1 no es vacío, entonces su raíz se llama sucesor izquierdo de R y análogamente análogamente si T2 no es vació se llama sucesor derecho de R.
CARACTERÍSTICAS
*El número de nodos es igual al número de arcos mas uno. *Todos los nodos son de grado interno uno, excepto el nodo raíz, de grado cero. *No hay ciclos. *Cualquier trayectoria es simple. *Entre cualquier par de nodos sólo hay una trayectoria.
ÁRBOL BINARIO Un árbol binario es un conjunto finito de m (m>= 0) nodos que es o bien vacío o consta de un nodo raíz con dos sub-árboles binarios llamados sub-árbol izquierdo y sub-árbol derecho. Un árbol binario de cero nodos se dice que esta vacío. Un árbol binario T se define como un conjunto finito de elementos llamados nodos de forma que T es vacío ( árbol nulo o vacío). Un árbol binario es un árbol ordenado de grado 2, es decir, es en el que cualquier nodo tiene cero, uno o dos sub árboles. Cuando tiene exactamente cero o dos sub árboles es un árbol estrictamente binario, de otra forma es un árbol de Knuth. Un árbol binario T se representa frecuentemente en forma de diagrama. Un diagrama representa un árbol binario T. Represente un árbol tipo T con las siguientes características. (i)T= a 11 nodos representados por las letras de la “A” la “K”. (ii) La raíz del árbol T es el nodo “A”. (iii)Una línea hacia abajo y a la izquierda del nodo “n” señala al sucesor izquierdo de “n”. Dos árboles binarios T y T' se dice que son similares si tienen la misma estructura o forma. Dos árboles se dice que son copias si son similares o tienen sus mismos contenidos en sus correspondientes nodos. La terminología de grafos y horticultura para un árbol binario T, también es utilizada. La línea entre un nodo n de T y un sucesor suyo se llama arista, y una
secuencia de aristas consecutivas se llama camino. Un nodo terminal se llama hoja y un camino que termina en una hoja se llama rama. Cada nodo de un árbol binario T, tiene asignado un no. de nivel de la forma que sigue: A la raíz R del árbol T tiene asignado un número de nivel de cero y al resto de los nodos se le asigna un número de nivel que es mayor en uno que el número de nivel de su padre. Aquellos nodos con el mismo número de nivel se dice que pertenecen a la misma generación. La profundidad o altura de un árbol T es el número máximo de nodos de una rama de T. Un árbol binario estricto es balanceado cuando el número de nodos terminales, n, es igual a 2 m, y la longitud de cualquier trayectoria de la raíz a cualquier nodo terminal es m, donde m es cualquier número entero no negativo.
ÁRBOL BINARIO COMPLETO El árbol T se dice que es completo cuando todos sus niveles tienen el máximo número de nodos posibles y si todos los nodos del último nivel están situados lo más posible a la izquierda.
ÁRBOLES BINARIOS EXTENDIDOS O ÁRBOLES-2 Un árbol binario T se dice que es árbol 2 o árbol binario Extendido si cada nodo n tiene 0 o 2 hijos. Los nodos con dos hijos se denominan nodos internos y los nodos con cero hijos se denominan nodos externos. Los nodos se distinguen en los diagramas mediante el uso de círculos para los nodos internos y de cuadrados para los nodos externos. Un árbol binario T puede ser convertido a un árbol binario extendido reemplazando cada sub árbol vacío por un nuevo nodo. Los nodos del árbol T original son ahora los nodos internos del árbol extendido, y los nuevos nodos son los nodos externos del árbol extendido.
APLICACIÓN DE LOS ÁRBOLES BINARIOS
Un árbol binario es una estructura de datos muy útil cuando se tienen que hacer decisiones de dos caminos en cada punto en un proceso. Por ejemplo, supongamos que queremos encontrar todos los duplicados en una lista de números. Una forma de conseguir esto es comparando cada número con todos los otros que le preceden. Sin embargo esto implica un número muy grande de comparaciones. El número de comparaciones puede ser reducido utilizando un árbol binario. El primer número es leído y colocado en un nodo que se establece como la raíz de un árbol binario con sub árboles izquierdo y derecho vacíos, cada número sucesivo en la lista es entonces comparado con el número de la raíz . Si estos son iguales, tenemos un duplicado y si es menor el proceso se repite con el sub árbol de la izquierda , y si es mayor el proceso es repetido con el sub árbol de la derecha. Esto continúa hasta que se encuentra un duplicado o se llega a algún sub-árbol vacío. En este caso, el números e coloca en un nuevo nodo en esa posición del árbol.
RECORRIDO DE ÁRBOLES Recorrer un árbol, es un método de visitas de los nodos con el objeto de sistematizar la recuperación de la información almacenada en los nodos de un árbol. Existen cinco formas de recorrer un árbol: 1)
TOP-DOWN.- Este recorrido es de arriba hacia abajo. Es iniciar las visitas por la raíz y continuar sobre los nodos del nivel 2 de izquierda a derecha, continuar sobre los del nivel 3, hasta alcanzar el nivel n.
2) BOTTOM-UP.- Este recorrido es de abajo hacia arriba.
Cuando los recorridos se practican de acuerdo una trayectoria, la información contenida en un nodo puede ser recuperada antes de visitar sus sub árboles, después de visitar alguno de sus sub-árboles o después de visitar los dos sub-árboles. Estas formas de recuperar la información de los nodos de un árbol caracterizan a los recorridos llamados: preorder, inorder y postorder. 2) PREORDER.- Observe el recorrido que se efectúa
4) INORDER.-Algoritmo:
5)POSTORDER.-Algoritmo: