斐波那契数列三种解法(c++)

牛牛学数列5

http://www.nowcoder.com/questionTerminal/6db6674518a9456198c166bcd0d2aaa1

1、递归(耗时量非常大)
include <iostream>
using namespace std;
int getvalue(int n){
if(n==1||n==2)
return 1;
else
return getvalue(n-2)+getvalue(n-1);
}
int main(){
int n;
cin>>n;
cout<<getvalue(n);
return 0;
}
2、数组
#include <iostream>
using namespace std;
int main(){
int a[1001]={1,1};
int n,i;
cin>>n;
for(i=0;i<n;i++)
a[i+2]=a[i+1]+a[i];
cout<<a[n-1];
return 0;
}
3、正常加法去算
#include <iostream>
using namespace std;
int main(){
int n,i;
cin>>n;
int f1=1,f2=1,f;
for(i=2;i<n;i++){
f=f1+f2;
f1=f2;
f2=f;
}
cout<<f;
return 0;
}</iostream></iostream></iostream>

全部评论

相关推荐

点赞 评论 收藏
分享
评论
6
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务