美文网首页
递归算法

递归算法

作者: paterL | 来源:发表于2022-02-13 18:36 被阅读0次

    一、概述:

      Java递归:简单说就是函数自身直接或间接调用函数的本身。

    二、应用场景:

      若:一个功能在被重复使用,并每次使用时,参与运算的结果和上一次调用有关,这时就可以使用递归来解决这个问题。

      使用要点:

      1,递归一定明确条件。否则容易栈溢出。

        2,注意一下递归的次数。

    递归算法解决问题的特点:

    1)递归就是方法里调用自身。

    2) 在使用递增归策略时,必须有一个明确的递归结束条件,称为递归出口。

    3)递归算法解题通常显得很简洁,但递归算法解题的运行效率较低。所以一般不提倡用递归算法设计程序。

    4)在递归调用的过程当中系统为每一层的返回点、局部量等开辟了栈来存储。递归次数过多容易造成栈溢出等,所以一般不提倡用递归算法设计程序。

    递归算法所体现的“重复”一般有三个要求:

    一是每次调用在规模上都有所缩小(通常是减半);

    二是相邻两次重复之间有紧密的联系,前一次要为后一次做准备(通常前一次的输出就作为后一次的输入);

    三是在问题的规模极小时必须用直接给出解答而不再进行递归调用,因而每次递归调用都是有条件的(以规模未达到直接解答的大小为条件),无条件递归调用将会成为死循环而不能正常结束。

    相关文章

      网友评论

          本文标题:递归算法

          本文链接:https://www.haomeiwen.com/subject/yefqlrtx.html