斐波那契序列的实现方法及对比

#include<iostream>
using namespace std;
int FeiboNon(int n) // 非递归实现
{
 int Feif = 1;
 int Feis = 0;
 int Feic = 0;
 for ( int i = 2; i < n; ++i)
 {
 Feic = Feif + Feis ;
 // Feif = Feic;
  Feis = Feif;
  Feif = Feic;
 }
 return Feic;
}

int Feibo(int n) // 递归实现
{
 if ( n == 0)
 return 0;
 if (n == 1)
 return 1;
 if (n >= 2)
 return Feibo(n-1)+Feibo(n-2);
} 
 // 对两个实现方法进行对比发现,递归实现的执行时间比非递归实现的时间多出来三倍还多。实现数据为求20个
f1为非递归实现。 f2为你递归实现


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章