递归算法的时仔汪缺间复杂度在算法中,当一个算法中包含递归调用时,其时间复杂度的分析会转化为一个递归方程求解,常用以下四种方法:
代入法的基本步骤是先推测递归方程的显式解,然后用数学归纳法来验证该解是否合理。
迭代法的基本步骤是迭代地展开递归方程的右端,使之成为一个非递归的和式,然后通过念辩对和式的估计来达到对方程左端即方程的解的估计。
这个方法针对形如“T(n) = aT(n/b) + f(n)”的递归方程。这种递归方程是分治法的时间复杂性所满足的递归关系。
即一个规模为n的问题被分成规模均为n/b的a个陵此子问题,递归地求解这a个子问题,然后通过对这a个子间题的解的综合,得到原问题的解。
可以将某些递归方程看成差分方程,通过解差分方程的方法来解递归方程,然后对解作出渐近阶估计。
1.递归是指对一个问题的求解,可以通过同一问题的更简单的形式的求解来表示,并通过问题的简单形式的解求出复杂形式的解,是解决一类问题的重要方法。
2.递归程序设计是程序设计中常用的一种方法,它可以解决所有有递归属性的问题,并且是行之有效的.
3.但对于递归程序运行的效率比较低,无论是时间还是空间都比非递归程序更费,若在程序中消除递归调用,则其运行时间可大为节省.