Este curso mostrará los fundamentos de los algoritmos para el área de ciencias de la computación.
El curso ofrecerá las herramientas necesarias para comprender y aplicar técnicas de análisis de algoritmos, el cálculo asintótico y la determinación de la correctitud de los algoritmos. Se desarrollarán contenidos sobre algoritmos de ordenación clásicos como HeapSort y QuickSort. Se presentarán las técnicas clásicas de diseño de algoritmos como Divide y Vencerás, Algoritmos voraces o greedy y Programación Dinámica. Se analizarán las estructuras de datos como pilas, colas, listas y tablas de dispersión. El contenido incluye el estudio y la aplicación de grafos a distintos tipos de problemas. Finalmente, se presentarán los conceptos básicos necesarios para comprender la teoría de la NP-completitud.
Se abordarán los temas tanto de forma teórica como práctica.
- Profesor: Cristian Cappo
- Profesor: Horacio Legal Ayala