Clean β’ Professional
Recursion is a programming technique where a function calls itself to solve a problem. Recursive functions are useful for tasks that can be broken down into smaller, similar sub-problems.
A recursive function usually has two main parts:
General Syntax:
function recursiveFunction(params) {
if (baseCondition) {
return someValue; // Base case
}
return recursiveFunction(modifiedParams); // Recursive call
}
Example: Factorial Function
The factorial of a number n (denoted as n!) is calculated as:
n! = n Γ (n-1) Γ (n-2) Γ ... Γ 1
Recursive Implementation:
factorial(5) calls factorial(4)factorial(4) calls factorial(3) β¦ until factorial(1)function factorial(n) {
if (n === 0 || n === 1) { // Base case
return 1;
}
return n * factorial(n - 1); // Recursive call
}
console.log(factorial(5)); // Output: 120
Example: Fibonacci Series
The Fibonacci sequence is a series where each number is the sum of the previous two numbers.
fibonacci(6) β fibonacci(5) + fibonacci(4)n <= 1) are reachedfunction fibonacci(n) {
if (n <= 1) return n; // Base case
return fibonacci(n - 1) + fibonacci(n - 2); // Recursive call
}
console.log(fibonacci(6)); // Output: 8