/inf263-algoritmia-pucp

Repositorio personal del curso Algoritmia de la Pontifica Universidad Católica del Perú dictado durante el ciclo virtual 2020-2.

Primary LanguageC++

INF263 Algoritmia

Este curso provee una introducción al modelamiento matemático de los problemas computaciones. Este cubre algoritmos comunes, paradigmas algorítmicos, y estructuras de datos utilizadas para resolver estos problemas. El curso enfatiza la relación entre algoritmos y programación, e introduce técnicas básicas de análisis y medida de la eficiencia.

Tabla de contenido

Módulo Tema Contenido
I Preliminares ➡️ Fueza bruta

➡️ Recursión

➡️ Divide y vencerás

➡️ Backtracking
II Estructuras de datos ➡️ Pilas

➡️ Colas

➡️ Listas

➡️ Árboles binarios
III Algoritmos de ordenamiento ➡️ Selection sort

➡️ Insertion sort

➡️ Merge sort
IV Técnicas algorítmicas ➡️ Búsqueda binaria

➡️ Programación dinámica

Nota: Como pueden observar, el contenido del curso dictado en la PUCP es muy elemental y puede ser aprendido en menos de dos semanas puesto que se centra en la implementación de los algoritmos y no en la teoría detrás de estos. En caso quieran aprender el tema con mayor profundidad, recomiendo lo siguiente:

  • Bibliografía:
    • Introduction to Algorithms. Thomas Cormen, Charles Leiserson, Ronald Rivest, Clifford Stein.
    • Guide to Competitive Programming. Antti Laaksonen.
    • Competitive Programming. Felix Halim, Steven Halim.
  • Resolución de problemas:
    • LeetCode, HackerRank: Dificultad fácil. Plataformas orientadas a preguntas de entrevistas en compañías tecnológicas.
    • Codeforces, AtCoder, CodeChef: Todos los niveles de dificultad. Plataformas orientadas a la programación competitiva.

Asimismo, adjunto mi otro repositorio con mayor variedad de temas y problemas resueltos.

Organización de las carpetas

examenes - contiene los enunciados y soluciones del examen parcial y final del curso.

laboratorios - contiene los enunciados y soluciones de los laboratorios.

problemas - contiene ejercicios agrupados por temas.

tarea-academica - contiene el informe final del curso, el cual lo basé en Segment Tree, mi estructura de datos favorita en programación competitiva.

Lista de cursos universitarios sobre algoritmos

Curso Universidad
Algorithms and Data Structures ITMO University
Introduction to Algorithms Massachusetts Institute of Technology
Design and Analysis of Algorithms Stanford University
Data Structures University of California, Berkeley