JavaScript——递归算法

Posted 勇敢*牛牛

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JavaScript——递归算法相关的知识,希望对你有一定的参考价值。

javascript——递归算法案例

求n的阶乘

function fun(n) 
	if(n==1)
		return 1;
	else
		return n*fun(n-1)
		
	
console.log(fun(5));


箭头函数

var fun = (n) => return  n==1 ? 1: n*fun(n-1)

求最大公约数

function fn(a,b)
    if(a%b == 0)
        return  b
    else
        return fn(b,a%b)
       

console.log(fn(20,16));

求斐波那契数的第n项

function fei(n) 
   if(n==1 || n==2)
       return 1;
   else
       return fei(n-1)+fei(n-2)
   


var fei = ()=>return n==1 || n==2? 1: fei(n-1)+fei(n-2)
console.log(fei(4));

或者

var fei = ()=>return n==1 || n==2? 1: fei(n-1)+fei(n-2)
console.log(fei(4));

以上是关于JavaScript——递归算法的主要内容,如果未能解决你的问题,请参考以下文章

堆的算法排列 JavaScript 和递归的堆栈?

JavaScript数据结构与算法 - 递归

JavaScript 数据结构与算法之美 - 你可能真的不懂递归

JavaScript实现二分查找(搜索)算法(非递归实现)

一种优化递归算法的方法(javascript)

JavaScript中 BOM操作方法以及递归算法案例