En esta página están todos los manuales de algoritmia agrupados por temas. Para ver un orden recomendado para seguir los manuales, ver aquí.
Manuales Fundamentales
Aquí están los manuales que explican los conceptos algorítmicos básicos:
- 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
- Recursividad
- Algoritmos Voraces
Algoritmos con Números
Estos manuales explican algoritmos para tratar con números, especialmente en relación a propiedades de divisibilidad.
Búsqueda Completa y Programación Dinámica
La Búsqueda Completa es una técnica para resolver problemas de computación que se basa en probar todas las opciones posibles. La Programación Dinámica es una técnica más refinada, que en lugar de probar todas las opciones las agrupa en subproblemas que resuelve una sola vez.
- Búsqueda Completa (I): Fundamentos
- Búsqueda Completa (II): Ejemplos más avanzados
- Programación Dinámica (I): Fundamentos
- Programación Dinámica (II): Ejemplos más avanzados
Estructuras de Datos
Estos manuales explican estructuras de datos, es decir, métodos de organizar y procesar datos para obtener información y actualizarlos de forma eficiente.
- RSQ y Sumas Cumulativas
- RMQ y Sparse Table
- Á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
Grafos
Aquí se explican algoritmos sobre grafos.
- Introducción a los grafos
- Graph Traversal (DFS y BFS)
- Camino más corto entre nodos (Dijkstra, Bellman-Ford y Floyd-Warshall)
- Minimum Spanning Tree (Prim y Kruskal)