Week 28 Module

Week 28 of 43
Advanced DSA
WEEK 28 LEARNING MODULE

Advanced Recursion: Backtracking & Divide and Conquer

Covers combinatorial search, State-Space tree exploration, feasibility pruning (Choose-Explore-Unchoose), Subsets, Permutations, Combinations, and N-Queens.

5 Practice Problems3 Core ConceptsVerified Curriculum: high Confidence

What You'll Learn

  • Master Backtracking pattern: Choose $\to$ Explore (Recurse) $\to$ Un-choose (Backtrack).
  • Apply State-Space tree pruning to avoid exploring infeasible subtrees.
  • Generate combinatorial outputs: Subsets ($O(2^n)$), Permutations ($O(n!)$), and Combinations ($O(\binom{n}{k})$).
  • Solve constraint satisfaction problems (N-Queens) with diagonal and column conflict tracking.

Core Concepts

Backtracking Paradigm

Exponential / Factorial

Systematic depth-first search of solution spaces that abandons invalid candidate paths immediately upon constraint violation.

State-Space Tree Pruning

Using boolean flags or bitmasks to skip invalid choices before making recursive calls.

Combinatorial Generation

O(2^n) or O(n!)

Constructing subsets (power set) and permutations systematically via recursion.

Algorithms Covered
Subsets Generation ($O(2^n)$)Permutations Generation ($O(n!)$)Combinations GenerationN-Queens Puzzle SolverDivide & Conquer Sorting
Data Structures Applied
Recursion TreeState ListsHash Sets

The bad news is time flies. The good news is you’re the pilot.

Michael Altshuler

Lecture Materials (1)

Official lecture slide decks hosted on Google Drive
Official Slide Deck1.8 MB

Recursion_II.pdf

Topic: Recursion II

Format: PDF

Curated Practice Problems (5)

Track problem completions synced across your curriculum