Recursive Functions

In this lesson, you will be given a brief introduction to recursion and go over how recursion is implemented in Scala.

Recursive functions play an essential role in functional programming. But what are recursive functions?

Recursive functions are functions which call themselves in their own function body. This may seem a bit strange right now, but let’s see how this works.

Recursion

Recursion is the process of breaking down an expression into smaller and smaller expressions until you’re able to use the same algorithm to solve each expression.

A recursive function is made up of an if-else expression. The if represents the base case which is the smallest possible expression on which an algorithm will run and the else represents the recursive call; when a function calls itself, it is known as a recursive call. The recursive function will keep calling itself in a nested manner without terminating the call until it is equivalent to the base case in which case the algorithm will be applied, and all the function calls will move in an outward manner, terminating before moving on to the next one, reducing themselves until they reach the original function call.

Let’s look at recursive calls as boxes within boxes.

Create a free account to access the full course.

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