斐波那西数列实现

1.自底向上与自顶向下

//自底向上
#include<iostream>
using namespace std;
int f[101];
int main()
{
    int n;
    f[1]=1;
    f[2]=1;
    while(cin>>n){
        for(int i=3;i<=n;i++){
            f[i]=f[i-1]+f[i-2];
        }
        cout<<f[n]<<endl;
    }
    
}
View Code
//自顶向下递归  备忘录 
#include<iostream>
using namespace std;
int gcd(int n){
    if(n<3) return 1;
    else return gcd(n-1)+gcd(n-2);
} 
int main()
{
    int n;
    while(cin>>n){
        cout<<gcd(n)<<endl;
    }
}
View Code

2.使用共识

3.使用矩阵乘方

原文地址:https://www.cnblogs.com/helloworld2019/p/10354477.html