编程语言
首页 > 编程语言> > 递归算法存在的问题及解决办法

递归算法存在的问题及解决办法

作者:互联网

递归存在的问题

递归存在两个问题:堆栈溢出,重复计算。

堆栈溢出的解决办法

  1. 限制递归深度
  2. 改用非递归实现

重复计算解决办法

  1. 备忘录
    简单说就是在递归函数外面定义一个容器类型变量,保存已完成计算的值,递归计算时先考虑取“备忘录”中的值,若备忘录中没有再计算。
  2. 考虑是否可以用DP解决

递归算法的使用场景

递归算法的代码如何写

我们可以假设子问题B、C已经解决,在此基础上思考如何解决原问题A。
基于此,找递推公式+终止条件,然后翻译成代码

标签:解决办法,存在,递归,问题,备忘录,算法
来源: https://www.cnblogs.com/create-serenditipy/p/16512589.html