我最近第一次读到记忆化(我是菜鸟),我想尝试制作一个使用记忆化的斐波那契函数。这是我尝试过的,但任何超过 1 的东西都会给我一个分段错误。任何帮助表示赞赏!
unsigned int fibonacci( unsigned int n )
{
vector<unsigned int> fibvector;
if ( n <= 1 )
return n;
if ( fibvector.size() >= n )
return fibvector[n];
unsigned int add = fibonacci( n-1 ) + fibonacci( n-2 );
fibvector[n] = add;
return add;
}