【发布时间】:2019-11-19 08:21:29
【问题描述】:
我正在准备一个使用递归和记忆的斐波那契数列程序,但我无法使用对象将值传递给该方法。谁能指出我的代码有什么问题
class fib_mem
{
int f []=new int[10];
int fibmem(int n)
{
if(n<1)
{
f[n]=n;
return n;
}
else
{
if(f[n-2]==-1)
{
f[n-2]=fibmem(n-2);
}
if(f[n-1]==-1)
{
f[n-1]=fibmem(n-1);
}
f[n]=f[n-2]+f[n-1];
return f[n-2]+f[n-1];
}
}
}
class abc
{
public static void main(String[] args) {
fib_mem obj=new fib_mem(5);
int a=obj.fibmem();
System.out.println(""+a);
}
}
【问题讨论】:
-
new fib_mem(5)你没有采用 int 的构造函数 -
另外,你的代码有很多问题,特别是类和变量的命名
标签: java object recursion methods memoization