首页 > 代码库 > java——递归调用

java——递归调用

   递归调用是调用自身的函数,并传给自身的相应的参数,这一运算过程是一层层的进行的,直到满足一定条件时,才停止调用。

递归函数的特点

    1.函数要直接或间接调用自身。 

    2.要有递归终止条件检查,即递归终止的条件被满足后,则不再调用自身函数。 

    3.如果不满足递归终止的条件,则调用涉及递归调用的表达式。在调用函数自身时,有关终止条件的参数要发生变化,而且需向递归终止的方向变化。

举例:

计算5的阶乘?

public class TestWudejiecheng
{
	public static void main(String arg[])
	{
		System.out.println(f(5));
	}
	
	//递归函数
	public static int f(int n)
	{
		if(n==1)//终止条件
		{
			return 1;
		}
		else
		{
			return n*f(n-1);
		}
	}
}

    从上面的例子中可以进一步看出递归调用的特点,调用自身函数、有终止条件。同时也能从实例中看到递归算法的优点结构清晰,可读性强,而且容易用数学归纳法来证明算法的正确性,因此它为设计算法、调试程序带来很大方便。