Edición de «Final 2/2C/2008 (Algoritmos II)»

De Cuba-Wiki
Advertencia: no has iniciado sesión. Tu dirección IP se hará pública si haces cualquier edición. Si inicias sesión o creas una cuenta, tus ediciones se atribuirán a tu nombre de usuario, además de otros beneficios.

Puedes deshacer la edición. Antes de deshacer la edición, comprueba la siguiente comparación para verificar que realmente es lo que quieres hacer, y entonces publica los cambios para así efectuar la reversión.

Revisión actual Tu texto
Línea 1: Línea 1:
{{Back|Algoritmos y Estructuras de Datos II}}
1- Dados dos invariantes I1 e I2, siendo I2 mas fuerte que I1, se pedia:
Como quedaria el abs si reemplazo a I1 por I2, etc. No recuerdo mas, pero era demasiado dificil de imaginar que querian que pongas aca.


== Ejercicio 1 ==
2- Daban SSort, ISort, QSort y MergeSort y tenias que:
Dado un diseño con invariante I1, se consideraba el invariante I2 el cual es mas fuerte que I1 (es decir, I2 implica I1). Mantener el invariante I2 es muy complejo  (temporalmente) pero existe una funcion privada Optimizar(), la cual es muy cara, que se puede usar para establecer I2.<br>
Si se usa Optimizar() se pide
* a)que pre y post tiene la funcion Optimizar
* b)que cambia en la interfaz del diseño
* c)como queda el invariante
* d)como queda el abs
* e)como quedan los servicios exportados.<br><br>
 
Mini solucion: a) pre I1, post I2. b) cambia algun algoritmo el cual llama a optimizar() en algun caso (por ej cuando algun funcion 'detecta' que la estructura es ineficiente en su estado actual). c) queda igual porque I2 fuerza I1. d) queda igual porque la estructura de representacion no cambia. e) no esta bueno mencionar Optimizar() en los servicios exportados porque atas el tipo diseñado a su estructura interna (la cual es privada y misteriosa).
 
== Ejercicio 2 ==
Daban SSort, ISort, QSort y MergeSort y tenias que:
Complejidad temporal en caso promedio
Complejidad temporal en caso promedio
Complejidad temporal en peor caso
Complejidad temporal en peor caso
Línea 19: Línea 8:
Si el algoritmo acepta, luego de detenerlo, meter nuevos elementos al array y arrancar de nuevo.
Si el algoritmo acepta, luego de detenerlo, meter nuevos elementos al array y arrancar de nuevo.


== Ejercicio 3 ==
3- Dar pseudo-codigo de Insercion, Borrado y Busqueda en Hashing Dinamico Extensible.
Dar pseudo-codigo de Insercion, Borrado y Busqueda en Hashing Dinamico Extensible.


== Ejercicio 4 ==
4- Daban 5 errores comunes en los TADS y habia que explicar cual era su consecuencia en el diseño. No recuerdo todos, pero algunos eran:
Daban 5 errores comunes en los TADS y habia que explicar cual era su consecuencia en el diseño. No recuerdo todos, pero algunos eran:
Incongruencia
* Incongruencia
Inconsistencia
* Inconsistencia (contradiccion logica)
SobreEspecificacion
* Axiomatizacion muy complicada
SubEspecificacion
* Sub Especificacion
* Se usan muchos cuantificadores en la axiomatizacion


Tambien habia que decir cual era el error menos grave.
Tambien habia que decir cual era el error menos grave.


== Ejercicio 5 ==
5- Que parte del metodo de folding/unfolding es el que importa al querer hacer mas eficientes los calculos de una funcion?
Que parte del metodo de folding/unfolding es el que importa al querer hacer mas eficientes los calculos de una funcion?
 
[[Category:Finales]]
Ten en cuenta que todas las contribuciones a Cuba-Wiki pueden ser editadas, modificadas o eliminadas por otros colaboradores. Si no deseas que las modifiquen sin limitaciones, no las publiques aquí.
Al mismo tiempo, asumimos que eres el autor de lo que escribiste, o lo copiaste de una fuente en el dominio público o con licencia libre (véase Cuba-Wiki:Derechos de autor para más detalles). ¡No uses textos con copyright sin permiso!

Para editar esta página, responde la pregunta que aparece abajo (más información):

Cancelar Ayuda de edición (se abre en una ventana nueva)

Plantilla usada en esta página: