斐波那契数列改进
Posted ll-10
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了斐波那契数列改进相关的知识,希望对你有一定的参考价值。
#include<iostream> using namespace std; int fei(int n) { static int a[50]={0}; // 此处数组必须声明为static,否则会运行极慢!因为如果是普通数组,递归调用每调用一次就定义一次。而static变量只会定义一次。 if(n<=1) return 1; if(!a[n-2]) // 为防止重复计算,使用数组存储已经计算出的值。 a[n-2] = fei(n-2); if(!a[n-1]) a[n-1] = fei(n-1); return a[n-2]+a[n-1]; } int main() { int n; cout<<"Please enter a number :"; cin>>n; cout<<fei(n)<<endl; }
以上是关于斐波那契数列改进的主要内容,如果未能解决你的问题,请参考以下文章