An Interest In:
Web News this Week
- April 19, 2024
- April 18, 2024
- April 17, 2024
- April 16, 2024
- April 15, 2024
- April 14, 2024
- April 13, 2024
April 23, 2021 10:48 pm GMT
Original Link: https://dev.to/rthefounding/replace-loops-using-recursion-3npg
How to Replace Loops using Recursion
Recursion is the concept that a function can be expressed in terms of itself. To help understand this, start by thinking about the following task: Add the first n elements of an array to create the result of those elements. we can rewrite sum in terms of itself and never need to use a loop.
- Here we write a recursive function, sum(arr, n), that returns the sum of the first n elements of an array arr.
- Note: Recursive functions must have a base case when they return without calling the function again (in this example, when n <= 0), otherwise they can never finish executing.
function sum(arr, n) {if (n <= 0) { return 0;} else { return sum(arr, n - 1) + arr[n - 1]; //return sum(arr, n - 1) <-calls itself}}
console.log(sum([2, 3, 4, 5], 3)); will display 9
// sum([2, 3, 4, 5], 3 - 1) + arr[3 - 1];// sum([2, 3, 4 ,5], 2) + arr[2];// sum([2, 3, 4, 5], 2) + 4;// n = 2// sum([2, 3, 4, 5], 2 - 1) + arr[2 - 1];// sum([2, 3, 4, 5], 1) + arr[1];// sum([2, 3, 4, 5], 1) + 3; // n = 1 3// sum([2, 3, 4, 5], 1 - 1) + arr[1 - 1];// sum([2 3, 4, 5], 0) + arr[0];// sum([2, 3, 4, 5], 0) + 2;// n = 0 2// we hit our base case so now n = 0// 0 + 2 + 3 + 4 = 9// we want it to return 9 because 4 + 3 + 2 = 9;
Original Link: https://dev.to/rthefounding/replace-loops-using-recursion-3npg
Share this article:
Tweet
View Full Article
Dev To
An online community for sharing and discovering great ideas, having debates, and making friendsMore About this Source Visit Dev To