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:

  1. Introducción a la Algoritmia (I): Eficiencia
  2. Introducción a la Algoritmia (II): Costes
  3. Introducción a la Algoritmia (III): Ejemplos de análisis de costes
  4. Introducción a la Algoritmia (IV): Coste de ordenar
  5. Recursividad
  6. Algoritmos Voraces

Algoritmos con Números

Estos manuales explican algoritmos para tratar con números, especialmente en relación a propiedades de divisibilidad.

  1. Exponenciación Rápida
  2. Algoritmo de Euclides
  3. Criba de Eratóstenes
  4. Criba de Gries-Misra

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.

  1. Búsqueda Completa (I): Fundamentos
  2. Búsqueda Completa (II): Ejemplos más avanzados
  3. Programación Dinámica (I): Fundamentos
  4. 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.

  1. RSQ y Sumas Cumulativas
  2. RMQ y Sparse Table
  3. Árboles de Segmentos (I): Introducción
  4. Árboles de Segmentos (II): Implementación y Actualizaciones
  5. Árboles de Segmentos (III): Actualizaciones en rangos
  6. Estructura Unión-Búsqueda en conjuntos disjuntos (I): Introducción
  7. Estructura Unión-Búsqueda en conjuntos disjuntos (II): Mejoras de eficiencia

Grafos

Aquí se explican algoritmos sobre grafos.

  1. Introducción a los grafos
  2. Graph Traversal (DFS y BFS)
  3. Camino más corto entre nodos (Dijkstra, Bellman-Ford y Floyd-Warshall)
  4. Minimum Spanning Tree (Prim y Kruskal)