Skip to content

Latest commit

 

History

History
18 lines (11 loc) · 931 Bytes

01.Recursive-Algorithm.md

File metadata and controls

18 lines (11 loc) · 931 Bytes

1. 递归简介

1.1 递归的定义

递归(Recursion):指的是在函数的定义中直接或间接调用自身的一种方法。它通常把一个大型复杂的问题层层转化为一个与原问题相似的规模较小的问题来求解,递归策略只需少量的程序就可以描述出解题过程所需要的多次重复计算,大大减少了程序的代码量。

1.2 递归的特点

  1. 递归就是在过程或函数里调用自身。
  2. 在使用递归策略时,必须有一个明确的递归结束条件,称为递归出口。
  3. 递归算法解题时通常显得很简洁,但递归 算法解题的运行效率较低。
  4. 在递归调用过程中,系统为每层的返回点、局部变量等开辟了栈来存储。递归次数过多容易造成栈溢出等。

2. 递归的应用

参考资料

  • 【书籍】算法竞赛入门经典:训练指南 - 刘汝佳,陈锋 著