第1个回答 2021-11-01
1、递归做为一种算法在程序设计语言中广泛使用,是指函数/过程/子程序在运行过程中直接或间接调用自身而产生的重入现象。
2、递归算法一般用于解决三类问题:
1)数据的定义是按递归定义的。(Fibonacci(斐波那契)的函数)
2)问题解法按递归算法实现。(回溯)
3)数据的结构形式是按递归定义的。(树的遍历,图的搜索)
第2个回答 2018-05-13
pubilc long fun(long k){
if(k<=0) return 1;//鲁捧性
return k*fun(k-1);
}
解释下,这是阶乘函数,其结果超乎你想的大。
因此使用long。
其二,考虑鲁捧性,尽量考虑所有的输入情况。
其三,去掉没必要的条件,进行优化,代码简洁。本回答被网友采纳
第3个回答 2018-05-13
public int fun(int n){
if(n==0||n==1) return 1;
return n*fun(n-1);
}