js函数递归

来源:互联网 发布:处方软件破解版 编辑:程序博客网 时间:2024/06/05 16:18

一、递归函数概念:自己调用自己。

二、知识说明

function func(){    func();}func();

三、函数+变量

//用递归来求5的阶乘function func(n){    if(n == 1){        return 1;    }    return n * func(n-1);}console.log(func(5));

三、函数+函数

//斐波拉契题(兔子生兔子题目)--从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子对数为多少// 产量分析:1, 1, 2, 3, 5, 8, 13, 21 。。。// 第n个月的兔子总数  =  第n-1个月的兔子总数 + 第n-2个月的兔子总数// 问题: 求任意月兔子的总数function func(n){    if(n == 0 || n == 1){        return 1;    }    return func(n - 1) + func(n - 2);};console.log(func(22));

四、示例

//公园里有一堆桃子,猴子每天吃掉一半,挑出一个坏的扔掉,第6天的时候发现还剩1个桃子,问原来有多少个桃子.var a;function num(n){    if(n == 6){        a = 1;    }else{        a = (num(n + 1) + 1) * 2;    }    return a;}console.log(num(0));

总结:函数的递归就是在函数中调用自身。

原创粉丝点击