用java递归方法实现

某数列的第n项f(n)递归定义为,填写空格,完成该函数的计算。
f(n)=1 n=0,1
n*f(n-1) n≥2

第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);
}

相似回答