Backtracking & Recursion

Master the art of systematic search through decision trees. Learn recursive thinking, backtracking templates, pruning strategies, and memoization — all with complete Python solutions progressing from brute force to optimal. These patterns power search algorithms in AI planning, constraint satisfaction, and hyperparameter tuning.

7
Lessons
20+
Problems
🕑
Self-Paced
100%
Free

Your Learning Path

Follow these lessons in order, or jump to any topic that interests you.

What You'll Learn

By the end of this course, you will be able to:

📝

Think Recursively

Break any problem into smaller subproblems, identify base cases, and build solutions by combining recursive results.

🎯

Apply Backtracking Templates

Use a universal backtracking template to solve permutation, subset, constraint satisfaction, and grid search problems.

📈

Optimize with Pruning

Cut exponential search spaces with constraint propagation, symmetry breaking, memoization, and branch-and-bound techniques.

📊

Connect to ML Systems

Understand how backtracking powers AI planning, constraint solvers, hyperparameter search, and neural architecture search.