Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Sumario
1 Ejercicio 1
2 Ejercicio 2
3 Ejercicio 3
4 Ejercicio 4
Ejercicio 1
Dado un vector S de N elementos obtenidos iterativamente eligiendo números al azar en el intervalo [0,K], se
quiere eliminar los elementos repetidos, permitiéndose reordenar el arreglo. Se proponen tres alternativas.
Pasar los elementos S a una tabla de hash con encadenamiento S' y copiar S' sobre S
Hacer quicksort in-place y luego copiar los resultados a un arreglo usando dos indices para evitar
copiar los repetidos
Un algoritmo tipo counting sort que no tiene en cuenta la cantidad de veces que aparece cada elemento
Se testearon las tres soluciones descriptas para vectores de tamaño 200, 20000 y 200000 con K=50000. Pero
se mezclaron los resultados con los resultados de otros experimentos y no se puede volver a ejecutar el
programa. Decidir cual/es de las siguientes tablas representan los resultados del experimento. Luego dar un
algoritmo razonable para otros valores de K.
https://www.cubawiki.com.ar/index.php/Final_06/12/19_(Algoritmos_II) 1/3
12/5/22, 18:53 Final 06/12/19 (Algoritmos II) - Cuba-Wiki
Ejercicio 2
Implementar el algoritmo Floyd usando la técnica Divide & Conquer. Dado un árbol completo T, se debe
retornar un árbol H con los mismos elementos que T, pero que cumpla el invariante heap. Se puede asumir
que ya tiene implementados siftDown y siftUp con la complejidad adecuada. Dar la complejidad y justificar.
Ejercicio 3
En una implementación de un diccionario con hashing doble, explicar qué pasaría si una de las dos funciones
devolviera siempre el mismo valor(explicar qué pasaría si fuera la primera función y qué pasaría si fuera la
segunda).
Ejercicio 4
Dados las siguientes situaciones y fragmentos de TADs, indicar cual/es tienen errores y justificar.
En un laboratorio se tiene un frasco aislado con hielo. Al someterlo al calor, el hielo se derrite a razón
de por caloría. Cómo el frasco se encuentra aislado, esta es la única transformación posible.
TAD frasco
generadores:
observadores:
operaciones:
Fin TAD
Se tiene bolita que se puede mover dándole impulsos. Estos impulsos se miden en kilos y, por cada
impulso, la bolita de desplaza 2 unidades de distancia.
TAD bolita
[...]
observadores:
operaciones:
[...]
Fin TAD
Se quiere implementar una pila con la función TOP() en el caso en el que la pila no esté vacía.
TAD Pila
observadores:
Fin TAD
Ídem
TAD Pila
https://www.cubawiki.com.ar/index.php/Final_06/12/19_(Algoritmos_II) 2/3
12/5/22, 18:53 Final 06/12/19 (Algoritmos II) - Cuba-Wiki
hay_elem?: indicador -> bool
Fin TAD
https://www.cubawiki.com.ar/index.php/Final_06/12/19_(Algoritmos_II) 3/3