[toc]

递归算法

    递归是一种常见的解决问题的方法, 即把问题逐渐简单化. 递归的基本思想就是 "自己调用自己", 一个使用递归技术的方法的方法将会直接或者间接调用自己.

    利用递归可以用简单的程序来解决一些复杂的问题. 比如: 斐波那契数列的计算, 汉诺塔, 快排等问题.

    递归结构体包括两个部分:

        定义递归头: 什么时候不能调用自身方法. 如果额米有头, 将陷入死循环, 也就是递归的结束条件.

        递归体: 什么时候需要调用自身方法.

Python 第十节 第十六课_递归

执行结果:

Python 第十节 第十六课_递归算法_02

Python 第十节 第十六课_递归算法_03

执行结果:

Python 第十节 第十六课_斐波那契数列_04

Python 第十节 第十六课_递归_05

执行结果:

Python 第十节 第十六课_斐波那契数列_06

Python 第十节 第十六课_递归算法_07