Mental Model
Recursion solves a big problem by breaking it into smaller, similar problems until it becomes simple enough to solve directly.
Analogy: Like peeling an onion layer by layer until you reach the core, recursion breaks down arrays or strings step by step until only one element or an empty string remains.
array: [1, 2, 3, 4, 5] string: "hello" Recursion call stack: call 1 -> call 2 -> call 3 -> ... -> base case Each call handles one element and passes the rest forward.
