Tu ruta de aprendizaje

El curriculum se organiza por patrones. Cada tema arranca con una lección que explica el patrón y sigue con problemas para practicarlo en el navegador.

  1. Etapa 1

    Introducción

    Cómo usar este curso, cómo estudiar y qué esperar. Cinco minutos antes de arrancar con los temas.

    Principiante
    1 lección0 problemas
  2. Etapa 2

    Complejidad

    Big O, análisis amortizado, master theorem y trade-offs tiempo vs espacio. La base para razonar sobre cualquier algoritmo del curso.

    Principiante
    4 lecciones0 problemas
  3. Etapa 3

    Arrays y Strings

    Las estructuras base. Operaciones in-place, slicing eficiente, mutabilidad de strings y arrays dinámicos por dentro.

    Principiante
    4 lecciones0 problemas
  4. Etapa 4

    Búsqueda Binaria

    Encuentra elementos en datos ordenados en tiempo logarítmico. Aparece en cientos de problemas de entrevista y dentro de muchas estructuras de datos comunes.

    Principiante
    2 lecciones3 problemas
  5. Etapa 5

    Dos Punteros

    Recorre arreglos y listas con dos índices que cooperan. Convierte soluciones O(n²) en O(n) en muchos problemas sobre arreglos.

    Principiante
    2 lecciones3 problemas
  6. Etapa 6

    Ventana Deslizante

    Procesa subarreglos contiguos con una ventana que crece y se encoge según una condición. Convierte muchos problemas de subarreglos y substrings en O(n).

    Principiante
    1 lección3 problemas
  7. Etapa 7

    Recursión

    El cimiento de árboles, grafos, backtracking y programación dinámica. Aprende a pensar recursivamente sin perderte y a manejar la pila de llamadas.

    Principiante
    4 lecciones3 problemas
  8. Etapa 8

    Ordenamiento

    Algoritmos clásicos (merge, quick), no comparativos (counting, radix) y el patrón 'ordenar primero' que aparece en cientos de problemas.

    Principiante
    5 lecciones3 problemas
  9. Etapa 9

    Hash Maps y Sets

    Diccionarios y conjuntos para buscar, contar y agrupar en tiempo constante. Base de la mayoría de problemas de frecuencias y duplicados.

    Principiante
    2 lecciones3 problemas
  10. Etapa 10

    Listas Enlazadas

    Singly, doubly, circular. El patrón sentinela y la detección de ciclos con tortuga y liebre.

    Intermedio
    4 lecciones4 problemas
  11. Etapa 11

    Pilas y Colas

    LIFO, FIFO y monotonic stack. Paréntesis balanceados, evaluación de expresiones, next greater element y sliding window maximum.

    Principiante
    2 lecciones6 problemas
  12. Etapa 12

    Heap y Cola de Prioridad

    Mantiene el mínimo o máximo en tiempo O(log n). Usado en top-k, fusiones de listas ordenadas, Dijkstra y planificación.

    Intermedio
    2 lecciones3 problemas
  13. Etapa 13

    Árboles Binarios

    Recorridos, tipos de árbol (BST, balanceados, completos), métricas (altura, profundidad, diámetro) y serialización.

    Intermedio
    5 lecciones4 problemas
  14. Etapa 14

    Búsqueda en Anchura (BFS)

    Explora árboles y grafos nivel por nivel. La herramienta natural para caminos mínimos en grafos sin pesos y para problemas sobre matrices.

    Intermedio
    1 lección3 problemas
  15. Etapa 15

    Búsqueda en Profundidad (DFS)

    Recorrido en profundidad sobre árboles y grafos. Base de backtracking, detección de ciclos y problemas de componentes conexos.

    Intermedio
    2 lecciones3 problemas
  16. Etapa 16

    Grafos

    Representaciones, componentes conexos, caminos mínimos (Dijkstra, Bellman-Ford, Floyd-Warshall), orden topológico y Union-Find.

    Avanzado
    6 lecciones3 problemas
  17. Etapa 17

    Backtracking

    Identificar problemas, la plantilla choose/explore/unchoose y técnicas de pruning para que la búsqueda exponencial sea manejable.

    Avanzado
    4 lecciones3 problemas
  18. Etapa 18

    Programación Dinámica

    Identificar problemas DP, memoización top-down, tabulación bottom-up, optimización de espacio y DP sobre strings.

    Avanzado
    6 lecciones3 problemas
  19. Etapa 19

    Greedy

    Decisión óptima local en cada paso. Funciona cuando el problema tiene subestructura óptima clara y propiedad de elección codiciosa.

    Avanzado
    2 lecciones3 problemas
  20. Etapa 20

    Trie

    Árbol especializado para buscar prefijos y palabras. La estructura detrás de autocomplete, corrector ortográfico y búsqueda predictiva.

    Avanzado
    1 lección2 problemas
  21. Etapa 21

    Bit y Matemática

    Operadores de bits, manipulación de números, máximo común divisor y trucos numéricos comunes en entrevistas.

    Avanzado
    1 lección3 problemas
  22. Etapa 22

    Diseño de Estructuras

    Cómo combinar dos o más estructuras de datos para resolver problemas que ninguna resuelve sola. LRU Cache, MinStack y variantes.

    Avanzado
    1 lección2 problemas

Próximos temas: DFS, Sliding Window, Programación Dinámica, Grafos.