Algorithms Roadmap

Step-by-step procedures for solving computational problems efficiently.

5 stages · 18 topics 0% done
Algorithms
✓ Big-O Notation
✓ Binary Search
✓ Foundations
✓ Bubble Sort
✓ Merge Sort
✓ Core Concepts
✓ Quicksort
✓ Breadth-First Search
✓ Depth-First Search
✓ Dynamic Programming
✓ Intermediate Skills
✓ Greedy Algorithms
✓ Two Pointers
✓ Advanced Topics
✓ Sliding Window
✓ Dijkstra's Algorithm
✓ Backtracking
✓ Expert Level
Text version of this roadmap

1. Foundations

  • Big-O Notation: Asymptotic analysis, time and space complexity, best/average/worst-case, and common orders.
  • Binary Search: Divide-and-conquer search on sorted arrays, lower/upper bound, and rotated array variants.
  • Bubble Sort: Simple O(n²) sorting, optimization with early termination, and educational value.

2. Core Concepts

  • Merge Sort: Divide-and-conquer with O(n log n), merge operation, and stable sorting guarantee.
  • Quicksort: Partition-based sorting, pivot selection, average O(n log n), and worst-case analysis.
  • Breadth-First Search: Level-order graph traversal, queue-based, shortest path in unweighted graphs, complexity O(V+E).

3. Intermediate Skills

  • Depth-First Search: Stack/recursive traversal, pre/post order, topological sort, strongly connected components.
  • Dynamic Programming: Memoization, tabulation, optimal substructure, overlapping subproblems, and classic DP problems.
  • Greedy Algorithms: Local optimal decisions, matroid theory, fractional knapsack, Huffman coding, and activity selection.

4. Advanced Topics

  • Two Pointers: Left/right pointer technique for sorted arrays, sliding windows, and in-place operations.
  • Sliding Window: Fixed and variable window patterns for substring and subarray problems.
  • Dijkstra's Algorithm: Shortest path in weighted graphs, priority queue optimization, and correctness proof.

5. Expert Level

  • Backtracking: Systematic search with pruning, N-Queens, Sudoku, constraint satisfaction, and branch-and-bound.