递归的内涵
·自然界中的递归现象
–事物以自相似方式来重复自身的现象
·递——传承
–指内在联系、关系、规律可以被传递、继承
·归——综合
–指大量相似的微小个体或局部综合在一起构成原对象
递归与程序
·递归程序–过程中调用了自身代码完成功能的程序代码
·递归函数–一个函数在其定义中有直接或间接调用自身的行为
递归程序示例
递归算法基本思想
: –把一个复杂的大问题化解为一个规模较小的同类问题来求解;不断化解,直到问题规模极小时可以直接(或易于)求解递归算法小结
·基本思想:
–一种将“大问题”分解或转换为“小问题”求解的思路
–大、小问题之间有相似性
–规模极小时问题能够直接求解(结束递归)
·适合求解的三种问题类型:
–(1)解的定义是递归的;(Fibonacci函数、阶乘)
–(2)求解方法是递归的;(分治、回溯)
–(3)数据结构是递归的。(树/图的遍历)
·递归程序实现要素: –边界条件、递归返回段、递归前进段
·当边界条件满足时,递归返回;否则,递归前进
·递归前进段体现——问题由大化小的求解思路