zoukankan      html  css  js  c++  java
  • 蒙娜丽莎之美——递归

    递归是一种重要的算法思想,其实现的“简洁性”通常会让人赞美,但不加修饰的递归通常会带来栈空间的爆炸。然而,这并不阻挡人们对递归的探索。

    这位作者给出了递归一些典型的案例:https://mp.weixin.qq.com/s/mJ_jZZoak7uhItNgnfmZvQ

    这里面讲到了递归的三要素,以及递归的改进,让人折服。

    最后,我仅仅想总结一下对于个人对于递归的一些浅显的认识:什么样的问题可以递归?

    往往别人对于一个问题,可以想出递归,为何我们想不出来呢?因为我们没有认识问题的本质,而对于递归的问题,则由两个共性,这两点是十分重要的:

       1.  凡是问题规模可以缩小,但问题本身并没与变化的问题,均可采用递归(例如阶乘,例如求和,例如斐波那契数列....都有这样的特性)

       2. 凡是用递归可以解决的问题,一定存在其他办法,比如 递推。(原因在于递归是一种有规律的自上而下的结构,这种结构一定存在某种数学解析与之对应,或者存在一种自下而上的方式与之对应)

  • 相关阅读:
    模板的导入和继承
    图解从 URL 到网页通信原理
    HTTP协议详细介绍
    django的模型层
    LeetCode3-Longest Substring Without Repeating Characters
    LeetCode2-Add Two Numbers
    LeetCode1-Two Sum
    面试干货整理
    VS中使用QT调用R脚本
    MFC DLL 资源模块句柄切换[转]
  • 原文地址:https://www.cnblogs.com/shaonianpi/p/11000327.html
Copyright © 2011-2022 走看看