我创建了一种迭代计算斐波纳契数的方法(我不允许使用递归).在指数47之后,我得到了奇怪的结果:
斐波纳契数47:-1323752223
斐波那契数48:512559680
斐波那契数49:-811192543
斐波那契数50:-298632863
我尝试了不同的方法,但它改变了整个事情.这是我的方法,任何想法?希望您能够帮助我.
public static long fiboIterative(int n) {
if (n == 0)
return 0;
if (n == 1 || n == 2)
return 1;
int previous = -1;
int result = 1;
for (int i = 0; i <= n; i++) {
int sum = result + previous;
previous = result;
result = sum;
}
return result;
}
Run Code Online (Sandbox Code Playgroud)
}
java ×1