Foreword
Acknowledgments
Introduction
PART I: UNDERSTANDING RECURSION
Chapter 1: What Is Recursion?
Chapter 2: Recursion vs. Iteration
Chapter 3: Classic Recursion Algorithms
Chapter 4: Backtracking and Tree Traversal Algorithms
Chapter 5: Divide-and-Conquer Algorithms
Chapter 6: Permutations and Combinations
Chapter 7: Memoization and Dynamic Programming
Chapter 8: Tail Call Optimization
Chapter 9: Drawing Fractals
PART II: PROJECTS
Chapter 10: File Finder
Chapter 11: Maze Generator
Chapter 12: Sliding-Tile Solver
Chapter 13: Fractal Art Maker
Chapter 14: Droste Maker
Index
All chapters are included in the Early Access PDF.