函数递归

调用自己的函数,就叫做递归函数。

典型例子:数学中一个数n的阶乘,表示为n!,它的值定义是这样的:

1
2
0! = 1
n! = (n-1)*n

0的阶乘是1,n的阶乘的值是n-1的阶乘的值乘以n,所以这个定义是一个递归的定义。

为求n的值,需先求n-1的值,直到0,然后一次往回退。

求阶乘的递归函数代码如下:

1
2
3
4
5
6
7
public static long factorial(int n) {
if(n==0){
return 1;
}else{
return n*factorial(n-1);
}
}

递归是有开销的,而且使用不当,可能会出现意外的错误。

  • Copyright: Copyright is owned by the author. For commercial reprints, please contact the author for authorization. For non-commercial reprints, please indicate the source.
  • Copyrights © 2021 Silver Shaded
  • Visitors: | Views:

请我喝杯咖啡吧~

支付宝
微信