zoukankan      html  css  js  c++  java
  • 算法复习(2)递归

      递归是函数和过程调用的一种特殊形式,即允许函数和过程进行自我调用。递归有助于找到简化问题并找到解决问题的方法。

      线性递归是每一层次上至多只有一个实例,且构成线性的次序关系。线性递归是递归的最基本形式。

      减而治之是将复杂的问题分成一个平凡的子问题和一个规模缩减的子问题,分别求解,最后得到原问题的解。

      分而治之是将大规模的问题划分成两个(或多个)子问题,分别求解,再得到原问题的解。

      递归算法易于理解和实现,但是效率较低,在追求效率时,应将递归改写为等价的迭代形式。尾递归的最后一步是递归调用,是最简单的递归模式,可以方便改写成迭代形式。

      递归低效的之一是各递归实例被大量的重复地调用,因此时间复杂度与空间复杂度均较高。

  • 相关阅读:
    Docker安装nexus
    docker常用操作备忘
    react-01
    SBT实操指南
    Play中JSON序列化
    SPARK安装一:Windows下VirtualBox安装CentOS
    SPARK安装三:SPARK集群部署
    SPARK安装二:HADOOP集群部署
    SLICK基础
    函数式编程
  • 原文地址:https://www.cnblogs.com/itit/p/3426269.html
Copyright © 2011-2022 走看看