JavaScript Recursion - Exercises, Practice, Solution
JavaScript Recursion [13 exercises with solution]
[An editor is available at the bottom of the page to write and execute the scripts.]
Use recursion to solve the following exercises.
1. Write a JavaScript program to calculate the factorial of a number. Go to the editor
In mathematics, the factorial of a non-negative integer n, denoted by n!, is the product of all positive integers less than or equal to n. For example, 5! = 5 x 4 x 3 x 2 x 1 = 120
Click me to see the solution
2. Write a JavaScript program to find the greatest common divisor (gcd) of two positive numbers. Go to the editor
Click me to see the solution.
3. Write a JavaScript program to get the integers in range (x, y). Go to the editor
Example : range(2, 9)
Expected Output : [3, 4, 5, 6, 7, 8]
Click me to see the solution.
4. Write a JavaScript program to compute the sum of an array of integers. Go to the editor
Example : var array = [1, 2, 3, 4, 5, 6]
Expected Output : 21
Click me to see the solution.
5. Write a JavaScript program to compute the exponent of a number. Go to the editor
Note : The exponent of a number says how many times the base number is used as a factor.
82 = 8 x 8 = 64. Here 8 is the base and 2 is the exponent.
Click me to see the solution.
6. Write a JavaScript program to get the first n Fibonacci numbers. Go to the editor
Note : The Fibonacci Sequence is the series of numbers: 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, . . . Each subsequent number is the sum of the previous two.
Click me to see the solution.
7. Write a JavaScript program to check whether a number is even or not. Go to the editor
Click me to see the solution.
8. Write a JavaScript program for binary search. Go to the editor
Sample array : [0,1,2,3,4,5,6]
console.log(l.br_search(5)) will return '5'
Click me to see the solution.
9. Write a merge sort program in JavaScript. Go to the editor
Sample array : [34,7,23,32,5,62]
Sample output : [5, 7, 23, 32, 34, 62]
Click me to see the solution.
10. Write a JavaScript program to check whether a given string is Palindrome or not using recursion. Go to the editor
A palindrome is a word, number, phrase, or other sequence of symbols that reads the same backwards as forwards, such as the words madam or racecar, the date/time stamps 11/11/11 11:11 and 02/02/2020, and the sentence: "A man, a plan, a canal - Panama".
Test Data:
("madam") -> true
("abdb") -> false
("ab") -> false
(test("a") -> true
Click me to see the solution.
11. Write a JavaScript program to convert Binary number (positive) to Decimal using recursion. Go to the editor
Test Data:
(1) -> "1"
(0) -> "0"
(10) -> "1010"
(101) -> "1100101"
Click me to see the solution.
12. Write a JavaScript program to search a given integer in an array of sorted integers using Binary Search Algorithm and recursion. Go to the editor
Test Data:
([1, 2, 3, 5, 6, 7, 10, 11, 14, 15, 17, 19, 20, 22, 23], 6) -> 4
([1, 2, 3, 5, 6, 7, 10, 11, 14, 15, 17, 19, 20, 22, 23], 16) -> -1
Click me to see the solution.
13. A string consists of digits ranging from 2 to 9, inclusive.
Write a JavaScript program to get all possible letter combinations that can represent the number using recursion. Go to the editor
Test Data:
("12") -> ["ad", "ae", "af", "bd", "be", "bf", "cd", "ce", "cf"]
("9") -> ["y", "z"]
Click me to see the solution.
More to Come !
* To run the code mouse over on Result panel and click on 'RERUN' button.*
Live Demo:
See the Pen javascript-common-editor by w3resource (@w3resource) on CodePen.
Do not submit any solution of the above exercises at here, if you want to contribute go to the appropriate exercise page.
JavaScript: Tips of the Day
Shorten an array using its length property
A great way of shortening an array is by redefining its length property.
let array = [0, 1, 2, 3, 4, 5, 6, 6, 8, 9] array.length = 4 // Result: [0, 1, 2, 3]
Important to know though is that this is a destructive way of changing the array. This means you lose all the other values that used to be in the array.
Ref: https://bit.ly/2LBj213
- Weekly Trends
- Java Basic Programming Exercises
- SQL Subqueries
- Adventureworks Database Exercises
- C# Sharp Basic Exercises
- SQL COUNT() with distinct
- JavaScript String Exercises
- JavaScript HTML Form Validation
- Java Collection Exercises
- SQL COUNT() function
- SQL Inner Join
- JavaScript functions Exercises
- Python Tutorial
- Python Array Exercises
- SQL Cross Join
- C# Sharp Array Exercises