Semestres: U2017, A2018, B2018, A2022, B2022, A2023, B2023, A2024
Este es el último curso de programación de la carrera Ingeniería de Sistemas. En éste se consolida el estudio de las estructuras de datos y algoritmos necesarios para soportar la solución de problemas típicos de las Ciencias Computacionales. Además, se estudian diversos algoritmos que soportan los problemas típicos de la Investigación de Operaciones.
Aquí estudiaremos técnicas avanzadas de diseño y análisis de algoritmos, grafos junto a los algoritmos sobre éstos y sus aplicaciones en la solución de problemas de optimización y finalmente veremos una introducción a la Geometría Computacional.
Recursos:
- Lenguaje de programación C++ en su versión C++-17
- STL.
- Biblioteca DeSiGNAR.
- Clang.
- DDD.
- Valgrind.
- Doxygen.
- Github.
Bibliografía recomendada:
- Tejiendo Algoritmos de Leandro León.
- Introduction to Algorithms de Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest y Clifford Stein
- Computational Geometry in C de Joseph O'Rourke.
- Computational Geometry – Algorithms and Applications de Mark de Berg, Otfried Cheong, Marc van Kreveld y Mark Overmars.
- The Art of Computer Programming de Donald Knuth.
- The C++ Programming Language de Bjarne Stroustrup.
- Effective C++ de Scott Meyers.
Profesor: Alejandro Mujica.
Preparadores: Daniella Zambrano y José Andrés Farías.
Perhaps the most important principle for the good algorithm designer is to refuse to be content.