闲逛时看了这篇文章
[url]http://www.dnbcw.com/biancheng/hanshu/fpbs77602.html[/url]
作者优化后用长度为3的数组求解斐波那契,其实长度为2就足够了,上代码。。。
Ruby 的代码就更简单了
纯属好玩,请勿拍砖。。。。
[url]http://www.dnbcw.com/biancheng/hanshu/fpbs77602.html[/url]
作者优化后用长度为3的数组求解斐波那契,其实长度为2就足够了,上代码。。。
int fib(int n)
{
int f[2] = {0, 1};
int i = 2;
for(i=2;i<=n;i++) {
f[0] = f[0] + f[1];
f[0] = f[0] + f[1];
f[1] = f[0] - f[1];
f[0] = f[0] - f[1];
}
return f[1];
}
Ruby 的代码就更简单了
def fib2(n)
a=[0,1]
2.upto(n) do
a[0], a[1] = a[1], a[0]+a[1]
end
return a[1]
end
纯属好玩,请勿拍砖。。。。