This lesson will get you acquainted with recursion in Rust.

What Is Recursion?

Recursion is a method of function calling in which a function calls itself during execution.

There are problems which are naturally recursively defined. For instance, the factorial of a number nn is defined as n times the factorial of n1n-1.

factorial(n) = n * factorial(n-1)

Parts of Recursion

In terms of programming, a recursive function must comprise two parts:

  • Base case

    A recursive function must contain a base case. This is a condition for the termination of execution.

  • Recursive case

    The function keeps calling itself again and again until the base case is reached.


The following example computes the factorial of a number using recursion:

Note: A factorial is defined only for non-negative integer numbers.

Create a free account to access the full course.

By signing up, you agree to Educative's Terms of Service and Privacy Policy