亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > C > 正文

求斐波那契(Fibonacci)數(shù)列通項的七種實現(xiàn)方法

2020-01-26 16:09:56
字體:
供稿:網(wǎng)友
一:遞歸實現(xiàn)
使用公式f[n]=f[n-1]+f[n-2],依次遞歸計算,遞歸結(jié)束條件是f[1]=1,f[2]=1。
二:數(shù)組實現(xiàn)
空間復(fù)雜度和時間復(fù)雜度都是0(n),效率一般,比遞歸來得快。
三:vector<int>實現(xiàn)
時間復(fù)雜度是0(n),時間復(fù)雜度是0(1),就是不知道vector的效率高不高,當然vector有自己的屬性會占用資源。
四:queue<int>實現(xiàn)
當然隊列比數(shù)組更適合實現(xiàn)斐波那契數(shù)列,時間復(fù)雜度和空間復(fù)雜度和vector<int>一樣,但隊列太適合這里了,
f(n)=f(n-1)+f(n-2),f(n)只和f(n-1)和f(n-2)有關(guān),f(n)入隊列后,f(n-2)就可以出隊列了。
五:迭代實現(xiàn)
迭代實現(xiàn)是最高效的,時間復(fù)雜度是0(n),空間復(fù)雜度是0(1)。
六:公式實現(xiàn)
百度的時候,發(fā)現(xiàn)原來斐波那契數(shù)列有公式的,所以可以使用公式來計算的。
由于double類型的精度還不夠,所以程序算出來的結(jié)果會有誤差,如果把公式展開計算,得出的結(jié)果就是正確的。
完整的實現(xiàn)代碼如下:
復(fù)制代碼 代碼如下:

#include "iostream"
#include "queue"
#include "cmath"
using namespace std;
int fib1(int index)     //遞歸實現(xiàn)
{
 if(index<1)
 {
  return -1;
 }
 if(index==1 || index==2)
  return 1;
 return fib1(index-1)+fib1(index-2);
}
int fib2(int index)     //數(shù)組實現(xiàn)
{
 if(index<1)
 {
  return -1;
 }
 if(index<3)
 {
  return 1;
 }
 int *a=new int[index];
 a[0]=a[1]=1;
 for(int i=2;i<index;i++)
  a[i]=a[i-1]+a[i-2];
 int m=a[index-1];
 delete a;         //釋放內(nèi)存空間
 return m;
}
int fib3(int index)           //借用vector<int>實現(xiàn)
{
 if(index<1)
 {
  return -1;
 }
 vector<int> a(2,1);      //創(chuàng)建一個含有2個元素都為1的向量
 a.reserve(3);
 for(int i=2;i<index;i++)
 {
  a.insert(a.begin(),a.at(0)+a.at(1));
  a.pop_back();
 }
 return a.at(0);
}
int fib4(int index)       //隊列實現(xiàn)
{
 if(index<1)
 {
  return -1;
 }
 queue<int>q;
 q.push(1);
 q.push(1);
 for(int i=2;i<index;i++)
 {
  q.push(q.front()+q.back());
  q.pop();
 }
 return q.back();
}
int fib5(int n)          //迭代實現(xiàn)
{
 int i,a=1,b=1,c=1;
 if(n<1)
 {
  return -1;
 }
 for(i=2;i<n;i++)
 {
  c=a+b;     //輾轉(zhuǎn)相加法(類似于求最大公約數(shù)的輾轉(zhuǎn)相除法)
  a=b;
  b=c;
 }
 return c;
}
int fib6(int n)
{
 double gh5=sqrt((double)5);
 return (pow((1+gh5),n)-pow((1-gh5),n))/(pow((double)2,n)*gh5);
}
int main(void)
{
 printf("%d/n",fib3(6));
 system("pause");
 return 0;
}

七:二分矩陣方法

如上圖,F(xiàn)ibonacci 數(shù)列中任何一項可以用矩陣冪算出,而n次冪是可以在logn的時間內(nèi)算出的。
下面貼出代碼:

復(fù)制代碼 代碼如下:

void multiply(int c[2][2],int a[2][2],int b[2][2],int mod)
{
 int tmp[4];
 tmp[0]=a[0][0]*b[0][0]+a[0][1]*b[1][0];
 tmp[1]=a[0][0]*b[0][1]+a[0][1]*b[1][1];
 tmp[2]=a[1][0]*b[0][0]+a[1][1]*b[1][0];
 tmp[3]=a[1][0]*b[0][1]+a[1][1]*b[1][1];
 c[0][0]=tmp[0]%mod;
 c[0][1]=tmp[1]%mod;
 c[1][0]=tmp[2]%mod;
 c[1][1]=tmp[3]%mod;
}//計算矩陣乘法,c=a*b
int fibonacci(int n,int mod)//mod表示數(shù)字太大時需要模的數(shù)
{
 if(n==0)return 0;
 else if(n<=2)return 1;//這里表示第0項為0,第1,2項為1
 int a[2][2]={{1,1},{1,0}};
 int result[2][2]={{1,0},{0,1}};//初始化為單位矩陣
 int s;
 n-=2;
 while(n>0)
 {
  if(n%2 == 1)
   multiply(result,result,a,mod);
  multiply(a,a,a,mod);
  n /= 2;
 }//二分法求矩陣冪
 s=(result[0][0]+result[0][1])%mod;//結(jié)果
 return s;
}

附帶的再貼上二分法計算a的n次方函數(shù)。
復(fù)制代碼 代碼如下:

int pow(int a,int n)
{
 int ans=1;
 while(n)
 {
  if(n&1)
   ans*=a;
  a*=a;
  n>>=1;
 }
 return ans;
}

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表

圖片精選

亚洲欧美自偷自拍另类| 精品国产免费第一区二区| 国产日本精品视频| 日本久久久久久久久| 久久久久成人精品无码中文字幕| 欧美不卡一二三| 黄页网址大全在线观看| 国产欧美精品一区二区色综合朱莉| 欧美日韩亚洲视频一区| 亚洲欧洲日韩女同| 欧美草草影院在线视频| 这里是久久伊人| 中文字幕av一区二区三区人| 国产精品欧美一区二区三区| 日韩欧美国产成人精品免费| 亚洲国产精品国自产拍av秋霞| 国模精品系列视频| 手机看片国产1024| 中国国产一级毛片| 成人在线观看小视频| 国内拍拍自拍视频在线观看| 国产精品羞羞答答| 国产中文一区二区三区| 亚洲xxxx3d| 久久99精品久久久久久欧洲站| 丁香五六月婷婷久久激情| 国产综合内射日韩久| 亚洲电影免费观看高清完整版在线观看| 精品国产欧美一区二区五十路| 久久老司机精品视频| 久久精品一区二区国产| 五月天综合视频| 国产精品国模大尺度视频| 欧美精品se| 精品国产91乱高清在线观看| 成人免费在线观看入口| 久久国产精品色av免费看| 午夜精品小视频| 国产日韩欧美亚洲| 色噜噜狠狠一区二区三区| 欧美亚洲激情在线| 国产一区啦啦啦在线观看| 乱亲女秽乱长久久久| 欧美日韩国产va另类| 6080午夜伦理| 欧美日韩精品一区二区三区| 四虎1515hh.com| 强伦人妻一区二区三区| 国产精品色午夜在线观看| 情侣偷拍对白清晰饥渴难耐| 国产免费看av| 亚洲自拍中文字幕| 一级爱爱免费视频| 天堂√在线观看一区二区| 国产激情在线观看视频| 369你懂的电影天堂| 亚洲男人天堂手机在线| 久久99精品久久久久婷婷| www.久久久.com| 91视频观看视频| 亚洲欧美激情小说另类| 欧美变态网站| 欧美在线影院| 欧洲美女网站| www.女人的天堂.com| 91产国在线观看动作片喷水| 国产手机精品在线| 国产一区二区三区综合| 国产视频精品网| 91资源在线视频| 在线观看免费视频污| 岛国爱情动作片在线| 四虎国产成人精品免费一女五男| 久久尤物电影视频在线观看| 国产精品久久久久久久久免费高清| 区二区三区在线| 青青草免费观看免费视频在线| 欧美大片免费久久精品三p| 欧美日韩dvd在线观看| 日本高清视频网站| 亚洲精品影院| 中文字幕免费在线播放| 国产精品亚洲一区二区无码| 欧美爆操老女人| 国产精品一区久久久久| 久久青草视频| 亚洲剧情一区二区| 国产99re66在线视频| 国产在线观看一区二区三区| 欧美成人一二三区| 中文字幕第17页| 国产午夜福利片| 很污很黄的网站| 不卡的日韩av| 日韩精品一区二区三区久久| 亚洲欧美日韩不卡| 亚洲va综合va国产va中文| 日本成人午夜影院| 亚洲狼人国产精品| 免费精品一区| 成人高清伦理免费影院在线观看| 国内外成人在线视频| 992在线观看| 26uuu亚洲电影在线观看| 国产精品国产三级国产aⅴ中文| 日韩av免费| 欧美作爱福利免费观看视频| 日韩在线电影一区| 国产精品露脸自拍| av电影不卡在线观看| 美女胸又www又黄的网站| 蜜桃传媒一区二区亚洲av| 日韩高清免费观看| 丁香六月色婷婷| 制服.丝袜.亚洲.中文.综合懂| 黑人巨大精品欧美一区二区小视频| 最新国产成人在线观看| 国产二区视频在线| 在线日韩欧美视频| 麻豆影院在线观看| 亚洲国产综合色| 精品在线视频免费观看| 亚洲图片欧美一区| 欧美娇小极度另类| 日本高清久久一区二区三区| 老牛国内精品亚洲成av人片| 99视频+国产日韩欧美| 国产欧美精品xxxx另类| 99国产精品免费视频| 日韩av免费看网站| 在线碰免费视频在线观看| 粉嫩一区二区三区性色av| 亚洲天堂最新地址| 国产二区不卡| 登山的目的在线| 日韩久久免费电影| 欧美专区一区| 伊人国产在线| 曰本一区二区三区视频| 一个人看的www视频在线免费观看| 娇妻被老王脔到高潮失禁视频| 国产精品4hu.www| 91欧美视频网站| 99精品国产一区二区| 国产第一页在线| 精品一区二区三区毛片| 国产精品69毛片高清亚洲| 四色最新网址| 国产精品久久久久福利| 亚洲一区二区久久久久久久| 久草福利在线| 91在线资源| 黄色av观看| 久久女同性恋中文字幕| 久久综合色影院| 日本伦理一区二区| 91片黄在线观看| 欧美高潮视频| 天堂网www天堂在线网| 韩日视频一区| 久久99国内精品| 中文字幕永久在线观看| 俺去俺来也在线www色官网| av免费在线播放网站| 久久久av网站| 亚洲欧美小说色综合小说一区| 日本一区二区三区免费观看| 91精品国自产在线| 亚洲欧洲三级电影| 免费日韩一区二区三区| 国内精品免费视频精选在线观看| 小黄文在线观看| 亚洲激情成人在线| 亚洲第一区在线观看| 日韩一级理论片| 国产麻豆9l精品三级站| 国产精品麻豆欧美日韩ww| 浮力影院欧美三级日本三级| 亚洲a成v人在线观看| 国产精品久久久爽爽爽麻豆色哟哟| 国产精品视频1区| 欧美jizzhd精品欧美满| 久久狠狠亚洲综合| 黄色片在线免费观看| 欧美日韩一区二区免费在线观看| 国产福利电影| 欧美在线一二三区| 国产精品日本一区二区| 国产精品国产三级国产aⅴ原创| 污视频网站在线免费观看| 色狠狠av一区二区三区| 亚洲资源一区| 亚洲天堂免费av| 538国产精品一区二区免费视频| 国产成人精品免费看在线播放| 先锋影音资源综合在线播放av| 麻豆视频一区二区| 91成人免费在线| 91国产丝袜在线放| 超碰超碰人人人人精品| 欧美国产日本在线| aa国产成人| 欧美在线视频一区| 农村一级毛片| 亚洲香蕉成视频在线观看| 91在线国产剧情| 天堂www在线а√天堂| 成人乱色短篇合集| 欧美午夜在线播放| 日韩小视频在线观看专区| 黄色国产网站在线观看| 国产精品精品久久久久久| 欧美人交a欧美精品| 四虎www4hu永久免费| 一级片视频免费| 成人三级黄色免费网站| 2020日本不卡一区二区视频| 人与动物性xxxx| 午夜影院黄色片| 成人欧美在线| 国产精品伦一区二区三区视频| 精品少妇一区二区30p| 国产日韩欧美精品综合| sm在线播放| 国产成人在线视频播放| 久久久久久久久久久影视| 亚洲美女搞黄| 黑人与娇小精品av专区| 视频在线观看国产精品| 亚洲成人男人天堂| 玖玖爱在线精品视频| 亚洲精品久久嫩草网站秘色| 久久91精品国产91久久小草| 成人中文字幕在线观看| 三级影片在线看| 亚洲永久字幕| 久久九九全国免费精品观看| sdde在线播放一区二区| 欧美日韩国产黄色| 中文字幕精品久久久| 欧美最猛性xxxx高清| 久久精品欧美日韩精品| 成人性生交大免费看| 欧美黄色小视频| 欧美一级片网址| 日本美女视频一区二区| av网站一区| 秋霞毛片久久久久久久久| 久久99精品国产麻豆婷婷洗澡| www成人在线视频| 欧美日韩成人综合在线一区二区| 热久久久久久久| 三级a在线观看| 亚洲欧洲午夜一线一品| 999这里有精品| 亚洲欧美视频在线观看视频| 成人免费在线观看| 国产精品.xx视频.xxtv| 天天躁日日躁狠狠躁喷水| 黄色工厂这里只有精品| 国产剧情在线一区| 国产精品久久久久久久小唯西川| 国产精品人妻一区二区三区| 国产精品成人一区二区| 毛片精品免费在线观看| 99精品国产高清一区二区麻豆| 暴力调教一区二区三区| 日韩成人综合网| 美腿丝袜亚洲综合| 欧美肥老太太性生活| 国产a精品视频| 亚洲国产高清福利视频| 日本高清视频在线| 日韩在线网址| 亚洲在线免费播放| 国产福利视频在线| 欧美/亚洲一区| 日本肉肉一区| 在线日本制服中文欧美| 老司机aⅴ在线精品导航| 日韩精品视频网| 黑人巨大狂躁日本妞在线观看| 欧美性受极品xxxx喷水| 亚洲精品一区av在线播放| 国产日韩欧美在线| xxxx黄色片| 重囗味另类老妇506070| 免费看成年视频网页| 久久精品国内一区二区三区水蜜桃| 国产欧美日韩另类一区| 日本韩国欧美三级| 国产乱人伦精品一区| 一本加勒比波多野结衣| 亚洲激情国产精品| 成人国产一区二区三区精品| 欧美一区2区| 亚洲乱码精品久久久久..| 色涩视频在线观看| www国产成人免费观看视频 深夜成人网| 久草免费福利视频| 日韩国产高清污视频在线观看| 国产精品羞羞答答xxdd| 午夜精品三级久久久有码| 欧美国产日韩综合| 18+激情视频在线| 亚洲精品v日韩精品| 你懂的好爽在线观看| 妖精视频一区二区三区| 成人福利一区二区| 中文字幕在线国产精品| 国产欧美亚洲视频| 美女扒开腿让男人桶爽久久软| 国产成人久久777777| 国产精品影片在线观看| 国产91在线看| wwwwww国产| 中文在线资源天堂| 亚洲最新无码中文字幕久久| 久久久久99精品| 国产三区在线观看| 久久综合九色综合88i| 国产综合在线观看视频| 欧美激情一区二区三区四区| av一级在线观看| 欧美国产中文字幕| 在线免费观看日韩视频| 国产一区二区三区免费观看在线| 一区二区免费在线|