#include <iostream>
int* memo;
int calFib(int n, int* memo)
{
if (memo[n] != -1)
return memo[n];
memo[n] = calFib(n - 2, memo) + calFib(n - 1, memo);
return memo[n];
}
int fib(int n)
{
memo = new int[n + 1];
for(int i = 0; i <= n; i++)
{
memo[i] = -1;
}
memo[0] = 0;
memo[1] = 1;
return calFib(n, memo);
};
int main()
{
int res = fib(5);
return 0;
}
Fibonacci数列递归 + 数组缓存算法
最新推荐文章于 2024-03-21 10:55:03 发布