zoukankan      html  css  js  c++  java
  • 递归的理解与应用

    1.理解递归
        递归:是一种应用非常广泛的算法(或编程技巧),DFS深度优先搜索,前中后二叉树遍历等,都有使用到。
     
    2.递归需要满足的三个条件:
        a.一个问题可以分解为多个子问题
        b.该问题与子问题的求解思路完全一致
        c.存在递归的终止条件
     
    3.编写递归代码:
        a.写出推导公式
        b.找到终止条件
        c.翻译成代码实现
        注意:
            递归要警惕调堆栈溢出:当调用深度过大,不建议使用递归实现
            递归要警惕重复计算:可以将计算过的数据保存起来,下次计算时先查找一下
            递归的空间复杂度是O(n)
     
    4.将递归代码改写为非递归代码
        
    5.如何调试递归代码?
        a.打印日志发现,递归值
        b.结合条件断点进行调试
  • 相关阅读:
    学习进度条
    学术诚信与职业道德
    czxt
    操作系统
    04 17评论博客
    0414 结对 2.0 33 34
    0408 汉堡包
    (补)结对心得
    构建之法4读后感
    复利计算4.0
  • 原文地址:https://www.cnblogs.com/wangzepu/p/11389381.html
Copyright © 2011-2022 走看看