当前位置:
文档之家› 第5章递归第1讲-什么是递归
第5章递归第1讲-什么是递归
递归是指在定义一个过程或函数时,出现直接或间接调用自己的成分。直接调用自己称为直接递归,间接调用自己则称为间接递归。当递归调用语句是函数中的最后一条执行语句时,这种递归被称为尾递归。递归在许多情况下都有应用,例如在数学公式、数列定义中,如求n!和Fibonacci数列;在数据结构中,如单链表就体现了递归性;在问题求解方法上,如Hanoi塔问题就采用了递归解法。递归模型是递归算法的抽象,由递归出口和递归体两部分组成,递归出口确定递归何时结束,递归体确定递归求解时的递推关系。递归的执行过程包括分解和求值两部分,通过将一个不能或不好直接求解的对于复杂的递归问题,求解时需要进行多次分解和求值,形成一颗递归树。