JavaScript的递归函数
一个函数调用了自身,并设置了结束条件,这个函数才是一个正确的递归函数
1. 案例1
求正整数n的阶乘?
- 分析
100! = 100 * 99 * 98 * 97 ... * 1 -> 100 * 99!99! = 99 * 98 * 97 * 96 ... * 1 -> 99 * 98!98! = 98 * 97 * 96 * 95 ... * 1 -> 98 * 97!- 也就是
n的阶乘等于n * (n-1)!
function fn(n) {
if (n == 1) {
return 1
}
return n * fn(n-1)
}
2. 案例2
求斐波那契数列的第n位是多少?
- 数列:1 1 2 3 5 8 13 21 34 55 …
- 规则:第一位和第二位是1,第三位开始每一位是前两位的和
function fn(n) {
if (n==1 || n==2) {
return 1
}
return fn(n-1) + fn(n-2);
}
参考链接:JavaScript的递归函数
参考链接:JavaScript的函数
感谢您的阅读与支持,如果这篇文章对您有帮助,请关注点赞收藏,您的支持是我创作的动力!

689

被折叠的 条评论
为什么被折叠?



