我正在编写一个递归方法来计算乘法Fibonacci序列。此序列类似于常规Fibonacci序列,除了不是添加前两个数字来查找下一个数字,而是将它们相乘。我目前已经编写了这个方法,但是不管返回我认为正确结果的是什么,无论输入数是什么,该方法都返回0。任何帮助或想法将不胜感激。 这是方法:
public static int fibonacciPower(int n)
{
if(n < 2)
{
return n;
}
else
{
return (fibonacciPower(n-1) * fibonacciPower(n-2));
}
}
答案 0 :(得分:0)
你需要返回1
if(n < 2)
{
return 1;
}
这是因为,如果n变为0,你最终乘以0,然后你的乘积变为0.因此,如果n等于0或1,我们乘以1