Exámenes
| Examen | Cuándo | Temas |
|---|---|---|
| Parcial | Semana 8 | Semanas 1–7: C++, ownership y templates, análisis asintótico, arreglos dinámicos, listas, pilas, colas, ordenamiento y tablas hash con encadenamiento |
| Final | Semana 16 | Todo el curso, con énfasis en las semanas 9–15: direccionamiento abierto, árboles de búsqueda, AVL, rojinegros, heaps y grafos |
Formato sugerido
- Simular a mano: cómo queda una tabla hash, un árbol AVL, un árbol rojinegro o un heap después de una serie de operaciones.
- Analizar: el costo de un fragmento de código, y el costo amortizado de una serie de operaciones.
- Elegir: qué estructura conviene según las operaciones de un problema, y por qué.
- Encontrar el bug: copias superficiales, fugas, iteradores inválidos e invariantes rotos.
- Interpretar mediciones: explicar una tabla de tiempos dada.
- Escribir código: una operación de una estructura dada.
Cómo estudiar
- Las Preguntas de repaso al final de cada guía semanal.
- Los ejercicios al final de cada capítulo de los apuntes.
- Simular cada estructura en papel antes de correr el código, y después comprobarlo.
- Rehacer los laboratorios y las prácticas sin mirar la solución.
- Al terminar el final de práctica, recorrer su lista de comprobación de los resultados de aprendizaje.
Banco de preguntas
Guardar los enunciados aquí, uno por archivo. Las soluciones no
deberían subirse a un repositorio público; usar exams/solutions/ (está en .gitignore).