定义:一个函数调用它自身,这种现象叫递归
练习题1:计算阶乘编写一个递归函数factorial(n),计算给定正整数n的阶乘(n! = n * (n-1) * ... * 1)。
练习题2:斐波那契数列实现一个递归函数fibonacci(n),返回斐波那契数列的第n项(斐波那契数列定义为:F(0)=0, F(1)=1, F(n)=F(n-1)+F(n-2) 对于 n>1)。
习题1答案:
// 计算阶乘编写一个递归函数factorial(n),计算给定正整数n的阶乘(n! = n * (n-1) * ... * 1)。 /* 1!=1 2!=2 x 1 3!=3 x 2 x 1=6 =3 x 2! 4!=4 x 3 x 2 x 1=4 x 3! */ function fn(n){ // 情况1:输入1时直接返回 if(n==1){ return n } // 情况2 :非1 return n*fn(n-1) } console.log(fn(5))
习题2答案
// 练习题2:斐波那契数列实现一个递归函数fibonacci(n),返回斐波那契数列的第n项(斐波那契数列定义为:F(0)=0, F(1)=1, F(n)=F(n-1)+F(n-2) 对于 n>1)。(1、1、2、3、5、8、13、21、34) function fn(n){ if(n==0||n==1){ return n } return fn(n-1)+fn(n-2) } console.log(fn(6))
下一篇:13.js对象-优快云博客