Fibonacci数列:
1,1,2,3,5,8,13,21,34......
第N个数的值N=(N-1)+(N-2)
求解第N个数的值
用递归法:
int fib(int n)
{
if (n<3) return(1);
else return(fib(N-2)+fib(N-1));
}
用非递归法:
int fib(int N)
{
if N<3 return(1);
int x1=1,x2=2,x3=3,a;
for(;x3<N;)
{
a=x2;
x2=x1+x2;
x1=x2-a;
x3++;
}
return(x2);
}
大家还有没有更好的方法吗?
博客围绕Fibonacci数列展开,介绍了其数列形式,给出第N个数的计算公式。同时提供了求解第N个数的递归法和非递归法代码示例,并询问是否有更好的方法,聚焦于算法实现。
8万+

被折叠的 条评论
为什么被折叠?



