X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;ds=sidebyside;f=fibonacci.js;h=a62f4711fc75adee803df9991769f832ff21d8b5;hb=df76f9e97177f2ddf0bcd8a1bf6293271ddc2d5a;hp=75476bf93ca9dfb853ebede4f09beec5b061c7e6;hpb=b34f63abd3ee9ef7e71fe4a8026a89129cdece93;p=benchmarks-js.git diff --git a/fibonacci.js b/fibonacci.js index 75476bf..a62f471 100644 --- a/fibonacci.js +++ b/fibonacci.js @@ -16,6 +16,22 @@ function fibonacciLoop (num) { return fib[num] } +/** + * + * @param num + * @returns + */ +function fibonacciLoopWhile (num) { + let current = 1 + let previous = 0 + while (--num) { + const temp = current + current += previous + previous = temp + } + return current +} + /** * @param num * @returns @@ -46,6 +62,9 @@ Benchmark.suite( Benchmark.add('fibonacciLoop', () => { fibonacciLoop(number) }), + Benchmark.add('fibonacciLoopWhile', () => { + fibonacciLoopWhile(number) + }), Benchmark.add('fibonacciRecursion', () => { fibonacciRecursion(number) }),