带记忆化搜索的斐波那契数列

带记忆化搜索的斐波那契数列

//通过dp数组保留部分结果,动态规划避免大量重复性操作

#include 
#include 
#include 


using namespace std;


const int MAXN=100;

int dp[MAXN];




int fabnaci(int n)
{
    if(n==1 || n==2)
    {
        return 1;

    }

    if(dp[n] != -1)
    {
        return dp[n];
    }
    else
    {
        dp[n]=fabnaci(n-1)+fabnaci(n-2);
        return dp[n];

    }



}




int main()
{
    fill(dp,dp+MAXN,-1);

    int n;
    cin>>n;

    int res=fabnaci(n);

    cout<

你可能感兴趣的:(动态规划-dp)