Anda di halaman 1dari 3

Gua de trabajos prcticos

rboles y rboles Balanceados

Gua de trabajos prcticos N 9:


rboles Balanceados AVL
Ejercicio 1:
Dado el siguiente rbol AVL, que almacena Valores Enteros.

a) Indique el factor de equilibrio de cada nodo del rbol: Nodo 50 40 10 75 60 85 90 FE

b) Dibuje el mismo rbol luego de realizar cada una de las siguientes operaciones (siempre comience con el rbol de la figura, no con el que resulta de acumular las operaciones): a. Insertar la clave 10. b. Insertar la clave 95 c. Insertar la clave 80 y luego la clave 77. d. Insertar la clave 80 y luego la clave 83 e. Insertar la clave 45 f. Insertar la clave 14 y luego borrar la clave 14. g. Insertar la clave 30 y luego borrar la clave 30. h. Insertar la clave 88 y luego borrar la clave 88. i. Insertar la clave 93 y luego borrar la clave 93. c) Luego de ejecutar las operaciones f), g), h) , e i), el rbol queda de la misma manera que antes de ejecutarlas?

Gua de trabajos prcticos

rboles y rboles Balanceados

Ejercicio 2:

a) Dibuje el mismo rbol luego de realizar cada una de las siguientes operaciones (siempre comience con el rbol de la figura, no con el que resulta de acumular las operaciones): a. Borrar D. b. Borrar V y luego F c. Borrar E d. Borrar W

Ejercicio 3:
Dado un rbol AVL a) Dibujar la estructura del rbol que se produce luego de insertar en el orden en que aparecen los valores: 14,6,24,35,17,21,32,4,7,15,22. b) Al rbol del punto a) eliminarle el nodo raz. Hacerlo tantas veces como sea necesario hasta que se desequilibre un nodo y se deba aplicar rotacin simple. c) Mostrar un ejemplo donde la misma secuencia de valores ingresados, pero en distinto orden, genere dos rboles AVL distintos. d) Cul es el nmero mnimo de nodos de un rbol binario equilibrado de bsqueda (AVL) de altura h=10?

Ejercicio 4:
Dado un rbol Binario de Bsqueda, y teniendo en cuenta la representacin que se le ha dado de - rboles AVL - rboles Binarios de Bsqueda Implemente los siguientes mtodos:

Gua de trabajos prcticos

rboles y rboles Balanceados

a) Agregue un mtodo int nivel(Comparable x) que determina en que nivel se encuentra un elemento. b) Agruege el mtodo int pesoDeNivel(int n), que retorna la cantidad de nodos que hay en el nivel n c) Escriba un mtodo en Java, que reciba como argumento un valor entero, y que busque de un rbol de bsqueda binario, la lista de los valores que son mltiplos o divisores del mismo. Por ejemplo si el rbol contiene los valores 2, 9, 13, 18, 36 y se llama a la funcin con el argumento 6, retornara 2, 18 y 36. d) Agregue un mtodo int podar(int x) que retorna el rbol binario, pero con todas las ramas de nivel mayor a x eliminadas. e) Agregue un mtodo List<Comparable> elementosEnRango(int posIni, int posFin) que retorna de un rbol AVL todos los elementos que se encuentran en el rango dado, y donde el rango define la posicin de los elementos segn su orden, comenzando por 1. Por caso el mtodo elementosEnRango(1,2) deber retornar los dos menores elementos del rbol. f) Agregue un mtodo boolean existeSubArbol(ArbolAVL elementos) que retorna verdadero si el rbol parmetro conforma un sub-rbol del rbol que recibe la invocacin. g) Agregue un mtodo int cantidadSubArbolesCompletos(int n) que retorna la cantidad de sub rboles completos y llenos de altura n que tiene un rbol.

Ejercicio 5:
Para realizar una bsqueda rpida de palabras, se le solicita implementar la clase DiccionarioIndizado, que contendr un AVL con las palabras ordenado alfabticamente. Una clase BusquedaEnDiccionarioIndizado se encargar de recorrerlo, y deber contar con los siguientes mtodos: String agregarCaracter(String carcter) Agrega un carcter a la bsqueda y devuelve la primera palabra que contenga la secuencia formada por todos los caracteres aadidos. String quitarCaracter(String carcter) Elimina un carcter de la bsqueda y devuelve la primera palabra que contenga la secuencia formada por todos los caracteres aadidos. String palabraSiguiente () Devuelve la palabra que en orden alfabtico es la siguiente a la ltima devuelta. String palabraAnterior() Devuelve la palabra que en orden alfabtico es inmediatamente anterior a la ltima devuelta.

Anda mungkin juga menyukai