Prácticas

Hay cuatro prácticas individuales.

Práctica Semana Temas
1 4 C++, ownership y templates, pilas, análisis asintótico
2 7 Arreglos dinámicos, colas, listas enlazadas, deques y ordenamiento
3 11 Tablas hash y árboles binarios de búsqueda
4 14 Árboles AVL y rojinegros, heaps y colas de prioridad

Cómo funciona

  • Esa semana, una de las dos sesiones de laboratorio es para la práctica, y dura 2 horas. La otra sesión sigue con el laboratorio de la guía.
  • Se resuelve en el entorno del curso, de forma individual.
  • Cada enunciado trae pruebas públicas: make test muestra si el programa hace lo esperado. La revisión corre además pruebas privadas con otros datos.
  • El código debe compilar sin advertencias con -Wall -Wextra -std=c++20, y terminar sin errores de ASan ni fugas de memoria.
  • No se usa IA generativa. Las demás herramientas permitidas están en el programa del curso, sección Uso de herramientas e IA generativa.

Qué se revisa

  • Que el programa dé el resultado correcto, en las pruebas públicas y en las privadas.
  • Que no haya fugas ni accesos inválidos, y que el ownership de la memoria esté claro.
  • Que cada operación tenga el costo que la estructura promete.
  • Que el código se lea bien: funciones cortas, nombres que dicen lo que hacen y sin código repetido.

Puede haber una revisión oral breve: quien entrega debe poder explicar cualquier parte de su código.