Repaso y entornosMemoria y abstracciónRecursiónUn intérprete
  1. 01

    Repaso: lo esencial de C

    Repaso y entornos
    Teoría
    Presentación · Repaso: tipos, control, funciones y assert
    Laboratorio
    Entorno y programas de repaso
  2. 02
    Teoría
    Repaso: arreglos, cadenas, struct y archivos · Cómo leer código
    Laboratorio
    Leer un programa ajeno y extenderlo
  3. 03

    El modelo de entornos

    Repaso y entornos
    Teoría
    El modelo de entornos: marcos, alcance y tiempo de vida
    Laboratorio
    Imágenes: filtros y marcos en gdb
  4. 04

    Punteros

    Memoria y abstracción
    Teoría
    Punteros: paso por puntero, arreglos y punteros, const
    Laboratorio
    Transformar imágenes con punteros
  5. 05

    Memoria dinámica

    Memoria y abstracción
    Teoría
    Memoria dinámica: malloc, free, ownership, ASan y valgrind
    Laboratorio
    Imágenes de cualquier tamaño y cacería de fugas
  6. 06

    Programas en varios archivos

    Memoria y abstracción
    Teoría
    Varios archivos: encabezados, make, tipos opacos y pruebas por la interfaz
    Laboratorio
    Dividir un programa en módulos con sus pruebas
  7. 07

    Tipos

    Memoria y abstracción✂️
    Teoría
    Tipos: typedef, enum, uniones etiquetadas · Conversiones · Comportamiento indefinido
    Laboratorio
    Un valor con varios tipos
  8. 08

    Examen parcial

    Memoria y abstracción
    Teoría
    Examen parcial
    Laboratorio
  9. 09

    Recursión

    Recursión
    Teoría
    Recursión: caso base, razonar por inducción, recursión e iteración
    Laboratorio
    Recursión en arreglos y cadenas
  10. 10

    Recursión en árbol

    Recursión✂️
    Teoría
    Recursión en árbol: flood fill, cuadrículas · Memoización
    Laboratorio
    Buscaminas
  11. 11

    Backtracking

    Recursión
    Teoría
    Backtracking: permutaciones, subconjuntos, N reinas y poda
    Laboratorio
    Resolver sudokus
  12. 12
    Teoría
    Funciones como valores: punteros a función, callbacks, qsort y contexto void
    Laboratorio
    Un solucionador genérico
  13. 13

    Datos recursivos

    Un intérprete✂️
    Teoría
    Datos recursivos: árboles de expresión, evaluar · Simplificar
    Laboratorio
    Álgebra de expresiones
  14. 14
    Teoría
    Análisis léxico y análisis sintáctico descendente recursivo
    Laboratorio
    Parser del lenguaje Mini
  15. 15

    El intérprete

    Un intérprete
    Teoría
    El intérprete: variables, funciones y marcos · Repaso
    Laboratorio
    Terminar y probar el intérprete
  16. 16

    Examen final

    Un intérprete
    Teoría
    Examen final
    Laboratorio