递归

递归终结点:1.比如盒子嵌套。首先打开一个大盒子大盒子里面嵌套小一号的盒子,小一号的盒子里面还有一个小一号的盒子,这些盒子里面都没有任何内容,到最后一个找到内容。就说明是到递归的临界点(也就是终结点)

第二大白话解释: 张三给李四说还钱,李四说等一下王五还没有还我的钱,王五说周天还没有还我的钱,直到最后一个人把钱还给

上一个人,就说明开始进行往前return  ,那么最后一个就是临界点   。最先开始的,到最后才拿到数据,因为不断的自己调用自己

递归的好处:

  可以减少代码的编写

缺点: 消耗性能比较大

案例1  声明一个函数  求和

    代码分析:1-100的和

    就是:100 + 1-99 的和

       100 + 99 + 1-98的和

    终结点的意思就是 当sum = 1的时候

    function sum(num) {

        if(sum ===1) return 1;

        else num + sum(num -1);

     }

     sum(100);

    解释: 一开始 sum = 100 ,走else

    else里面的 sum(num -1)  中的sum 不等于 1 所以就是sum 自己调用自己

 

posted @ 2020-12-23 22:33  诗亦0615  阅读(91)  评论(0)    收藏  举报