Diseño y Análisis de Algoritmos, Septiembre-Diciembre 2023
Información del curso
Libro de texto: Thomas H. Cormen, et. al. Introduction to Algorithms, Third or Fourth Edition.
Las secciones que se indican en esta página pertenecen a la edición tres del libro de texto.
Horario: Lunes y Miércoles, 10:00-12:00hrs.
Tareas
Miércoles 13 de septiembre:Tarea 1. Lunes 2 de octubre:Tarea2. Miércoles 18 de octubre: Tarea 3. Lunes 30 de octubre: Tarea4.Calendario
Lunes 28 de agosto: Presentación. No se asignaron lecturas. Miércoles de agosto: Modelo RAM. Insertion Sort. Cormen, Secciones 2.1 y 2.2 Lunes 4 de septiembre: Notación asintótica. Cormen, Sección 3.1. Miércoles 6 de septiembre: Julia y Notebooks. No se asignaron lecturas. Lunes 11 de septiembre: Recursión. Torres de Hanoi y MergeSort. Cormen, Secciones: 2.3.1 y 2.3.2 Miércoles 13 de septiembre: MergeSort es correcto. Recurrencias. Cormen, Secciones: 2.3.1 y 2.3.2 Lunes 18 de septiembre: Suma geométrica. QuickSort. Resolver recurrencias directamente. Cormen, Secciones: 7.1 y 7.2 Miércoles 20 de septiembre: QuickSort. Árbol de recursión para resolver recurrencias. Cormen, Secciones: 7.1 y 7.2 Lunes 25 de septiembre: Maximum subarray problem. Iniciamos backtracking. Cormen, Sección: 4.1. Miércoles 27 de septiembre: n-Reinas. Jeff Erickson, Sección: 2.1 Lunes 2 de octubre:Game trees. Jeff Erickson, Sección: 2.2 Miércoles 4 de octubre: Subset-sum Jeff Erickson, Sección: 2.3 Lunes 9 de octubre:Binary search trees: definición, recorrido, min & max, sucesor. Cormen, Secciones 12.1 y 12.2 Miércoles 11 de octubre:Binary search trees: insertar y borrar. Cormen, Sección: 12.3 Lunes 16 de octubre: Red-black trees. Cormen, Capítulo 13. Miércoles 18 de octubre: Red-black trees. Cormen, Capítulo 13. Lunes 23 de octubre y Miércoles 25 de octubre: No hay clase, estaré en congreso. Lunes 6 de noviembre: Examen parcial uno.Otros recursos
En algunas clases usaremos Julia en Jupiter Notebook. Coloqué aquí una descripción de cómo instalarlo.
El libro de algoritmos de Jeff Erickson.
El curso de Diseño y Análisis de Algoritmos del MIT
Problem Solving with Algorithms and Data Structures using Python.