En esta página están los manuales de algoritmia agrupados por dificultad / orden recomenado. Para ver los manuales agrupados por temas, ver aquí.
Introducción a la Algoritmia
Aquí están los manuales de la serie Introducción a la Algoritmia, que principalmente explican un concepto fundamental: la complejidad computacional temporal de un algoritmo como medida de su eficiencia.
- Introducción a la Algoritmia (I): Eficiencia
- Introducción a la Algoritmia (II): Costes
- Introducción a la Algoritmia (III): Ejemplos de análisis de costes
- Introducción a la Algoritmia (IV): Coste de ordenar
Lo que se explica en estos manuales introductorios, junto con conocimientos de programación en uno de los lenguajes aceptados, es todo lo que hace falta saber para poder llegar a resolver la mayoría de problemas de la OIE. Los manuales que vienen a continuación explican conceptos y técnicas que son conocidos y suelen aparecer de forma recurrente en problemas algorítmicos, pero no debes pensar que es necesario conocer todo lo que se explica para competir en la OIE, ni tampoco que sólo sabiéndote lo que sale en los manuales conseguirás resolver cualquier problema.
Manuales básicos
En estos manuales se explican técnicas clásicas y muy conocidas en el campo de la algoritmia.
- Algoritmos matemáticos:
- Algoritmos Voraces
- Búsqueda Completa:
- Programación Dinámica:
- Grafos:
- Precálculos e introducción a las Estructuras de Datos:
Manuales intermedios
En estos manuales se explican algoritmos más específicos.
- Árboles de Segmentos (I): Introducción
- Árboles de Segmentos (II): Implementación y Actualizaciones
- Árboles de Segmentos (III): Actualizaciones en rangos
- Estructura Unión-Búsqueda en conjuntos disjuntos (I): Introducción
- Estructura Unión-Búsqueda en conjuntos disjuntos (II): Mejoras de eficiencia
- Descomposición SQRT
- Tries
- Camino más corto entre nodos (Dijkstra, Bellman-Ford y Floyd-Warshall)
- Árbol DFS
- Minimum Spanning Tree (Prim y Kruskal)
- LCA
Manuales avanzados
Estos manuales tratan de técnicas y algoritmos avanzados.
- SCC y 2-SAT
- Heavy-Light Decomposition
- Centroid Decomposition
- Emparejamiento Máximo en Grafos Bipartitos
- SOS DP
- Optimizaciones Programación Dinámica
- Treaps
- Geometría Computacional
Manuales extra
Estos manuales tratan sobre temas que están fuera del currículum de la IOI. Aún así, puede ser interesante echarles un vistazo.