This document provides an overview of recursion, including recursive algorithms, functions, data types, and order of execution. Recursion is defined as a function calling itself, either directly or indirectly. Recursive algorithms break down a problem into smaller instances of the same problem until a base case is reached. Examples of recursive functions and data types are provided, such as factorial functions and linked lists. The order of execution for recursive functions is described, with code placed before the recursive call executing once per recursion level.
Related topics: