递归

描述

调用自身就是递归。

阅读顺序

  1. 找出跳出递归的条件;
  2. 查看跳出时,程序如何执行;
  3. 查看跳出程序的前一步,程序如何执行;
  4. 一直往前推;

补充

递归不会改变算法的时间复杂度。但递归作为算法的核心组件,会影响算法的速度。

递归适用于无法估计计算深度的问题。

示例代码

golang

java