Академический Документы
Профессиональный Документы
Культура Документы
ÁRBOLES
Es el TDA más adecuado para el tratamiento de grandes cantidades de
información.
Se denomina grado del nodo al número de descendientes directos del nodo.
Se denomina nivel de un nodo al número de descendientes que debe
recorrerse desde la raíz hasta el nodo.
30
10
30
10
49 55
1
El 12 y el 9 se insertarán como hijo derecho del 10 y del 30
respectivamente.
8
30
10
49 12 55 9
30
10
49 12 55 9
2
Si buscamos el 25, por ejemplo, vemos que en cada comparación
descartaremos la mitad de los elementos.
20
30
10
4 12 25 40
4 7
4 7
1 2
3
Ahora sería un árbol AVL y además sería de búsqueda ya que:
• 4 es menor que 5
• 1 es menor que 4
• 3 es mayor que 2
• 7 es mayor que 5 y menor que 4
El otro caso de rebalanceo que se presenta es el LR. El esquema general es:
2 7
1 4
2 5
1 3 7
CONCLUSIONES
En este capítulo se han presentado los TDA conocidos como árboles. En
primer lugar, se han definido de forma general, particularizando el estudio
posteriormente a los árboles binarios. Con el fin de establecer un criterio de
equilibrio que evite que el TDA árbol degenere en una lista enlazada, perdiendo con
ello sus posibilidades como estructura no lineal, se han definido los árboles
perfectamente balanceados.
Atendiendo al estudio presentado sobre árboles binarios pueden
establecerse las siguientes consideraciones. En primer lugar no debe olvidarse que
los árboles son estructuras de datos dinámicas. Por tanto, su utilización es
adecuada en aquellas aplicaciones en las que la cantidad de elementos varía y puede
ser elevada, al igual que en el caso de las listas enlazadas.
4
Entonces, ¿Qué aportan los árboles sobre las listas enlazadas? Recuérdese
que el tiempo de acceso de las listas enlazadas es elevado. Cuando los datos se
pueden organizar, es decir, si existe un criterio de clasificación de los mismos, las
estructuras de árboles presentan la posibilidad de tener en cuenta este criterio y
realizar el tratamiento de la información de forma más eficaz que con lista
enlazadas.
En el estudio de las estructuras de árboles deben tenerse en cuenta dos
factores fundamentales:
1. La longitud de trayectoria debe ser la menor posible, evitando que
degenere en una lista enlazada perdiendo su eficacia.
2. El criterio de organización de los datos.
Así, los árboles perfectamente balanceados son los que presentan el mejor
comportamiento desde el punto de vista de la longitud de trayectoria. Pero debe
observarse que no son árboles ordenados ya que en su definición no se ha
establecido ningún criterio de clasificación. Por eso su comportamiento no es mejor
que el de las listas enlazadas (piénsese, por ejemplo, en realizar una búsqueda en
un árbol perfectamente balanceado).
Considerando el segundo factor, se definen los árboles ordenados,
considerándose dos tipos básicos: árboles ordenados según el recorrido, y árboles
de búsqueda. En los primeros la organización se da en función del orden en que se
visitan los nodos y sus descendientes. Obsérvese que no se realiza en ellos ninguna
consideración sobre la longitud de trayectoria. Sin embargo, este hecho no implica
deterioro alguno en su eficacia, puesto que la secuenciación es el elemento a
considerar en las aplicaciones de estos árboles (piénsese en el caso particular de
los árboles de expresión).
Los árboles de búsqueda se definen para organizar los datos cuando en ellos
se puede establecer un criterio de clasificación con condiciones mutuamente
excluyentes, caso extraordinariamente común en la práctica. En este sentido
satisfacen los requerimientos de organización, pero de nuevo no se realiza
consideración alguna sobre la trayectoria, y para este tipo de criterio sí es
importante puesto que puede degeneran en una lista enlazada y perder su eficacia.
Si se establece sobre ellos el requerimiento de que sean perfectamente
balanceados, el costo del mantenimiento del árbol para que tras cada inserción o
eliminación siga siendo de búsqueda y perfectamente balanceado es muy elevado.
Aparece así un compromiso entre el costo de mantenimiento de la condición
de equilibrio del árbol y la organización como árbol de búsqueda. Debido a este
hecho se incorpora un criterio de equilibrio que garantice el comportamiento eficaz
de la longitud de trayectoria en el peor de los casos, obteniéndose los árboles AVL.
El análisis realizado muestra que el caso promedio, el árbol AVL es tan
satisfactorio como el árbol perfectamente balanceado, siendo además mucho más
fácil de mantener.
En conclusión, los árboles AVL se presentan como la mejor solución de
compromiso entre equilibrio y árbol de búsqueda. Obsérvese que esta conclusión no
quiere decir que los árboles AVL sean la mejor solución en todos los casos. Los
rebalanceos necesarios en la inserción y eliminación de datos no se dan en un árbol
5
de búsqueda. Por tanto, si predomina la inserción sobre la búsqueda, un árbol de
búsqueda es mejor solución que un AVL. En una aplicación así puede no considerarse
de criterio de equilibrio.