Loops, Recursion and Memoization in JavaScript

Posted by Ken Dason on Geeks with Blogs See other posts from Geeks with Blogs or by Ken Dason
Published on Thu, 25 Jul 2013 05:17:53 GMT Indexed on 2013/08/02 15:40 UTC
Read the original article Hit count: 292

Filed under:

Originally posted on: http://geekswithblogs.net/kdason/archive/2013/07/25/loops-recursion-and-memoization-in-javascript.aspx

According to Wikipedia, the factorial of a positive 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.

The value of 0! is 1.

We can use factorials to demonstrate iterative loops and recursive functions in JavaScript.  Here is a function that computes the factorial using a for loop:

Output:

Time Taken: 51 ms

Here is the factorial function coded to be called recursively:

Output:

Time Taken: 165 ms

We can speed up the recursive function with the use of memoization.  Hence,  if the value has previously been computed, it is simply returned and the recursive call ends.

Output:

Time Taken: 17 ms

© Geeks with Blogs or respective owner

Related posts about JavaScript