0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內(nèi)不再提示

斐波那契數(shù)列的實現(xiàn)方式

我快閉嘴 ? 來源:C語言學習聯(lián)盟 ? 作者:C語言學習聯(lián)盟 ? 2022-09-08 10:52 ? 次閱讀

斐波那契數(shù)列是一組第一位和第二位為1,從第三位開始,后一位是前兩位和的一組遞增數(shù)列,

像這樣的:0、1、1、2、3、5、8、13、21、34、55......

今天,我們用四種方式來進行實現(xiàn):

1.遞歸

int Fibon1(int n){ if (n == 1 || n == 2){  return 1; }else{  return Fibon1(n - 1) + Fibon1(n - 2); }}int main(){ int n = 0; int ret = 0; scanf("%d", &n); ret = Fibon1(n); printf("ret=%d", ret); return 0;}

2.非遞歸

int Fibno2(int n){ int num1 = 1; int num2 = 1; int tmp = 0; int i = 0; if (n < 3){  return 1; }else{  for (i = 0; i <= n-3; i++){   tmp = num1 + num2;   num1 = num2;   num2 = tmp;  }  return tmp; }}

3.數(shù)組

public int Fibno3(int n){ List<int> list = new List<int>(); list.fib(1); list.fib(1); int count = list.Count;  while (count < n){      list.fib(list[count - 2] + list[count - 1]);       count = list.Count;   }   return list[count - 1];  }}

4.隊列

public int Fibno4(int n){ Queue<int> queue = new Queue<int>(); queue.Enqueue(1); queue.Enqueue(1); for (int i = 0; i <= n - 2; i++){  queue.Enqueue(queue.AsQueryable().First() + queue.AsQueryable().Last());  queue.Dequeue(); }  return queue.Peek();}

運行結(jié)果:

b9397464-2e94-11ed-ba43-dac502259ad0.png


	

	
審核編輯:湯梓紅

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 數(shù)列
    +關(guān)注

    關(guān)注

    0

    文章

    4

    瀏覽量

    6151
  • 遞歸
    +關(guān)注

    關(guān)注

    0

    文章

    28

    瀏覽量

    8992
  • 數(shù)組
    +關(guān)注

    關(guān)注

    1

    文章

    411

    瀏覽量

    25821

原文標題:斐波那契數(shù)列的四種實現(xiàn)方式(C語言)

文章出處:【微信號:C語言學習聯(lián)盟,微信公眾號:C語言學習聯(lián)盟】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    [4.3.1]--4.3.1實例-打印數(shù)列

    語言程序設計高級語言程序
    jf_75936199
    發(fā)布于 :2023年03月11日 14:47:40

    matlab 實驗講義

    目 錄 試驗1數(shù)列... 1實驗2圖像輪廓線提取技術(shù)... 8實驗3RGB向量空間中的圖像分割技術(shù)... 16試驗4 圖像的偽裝技術(shù)
    發(fā)表于 05-17 22:02

    【求教貼】用MSI chips設計一個fibonacci 計數(shù)器

    display decoder 顯示出輸出的數(shù)列,輸出結(jié)果如下0,1,1,2,3,5,8,13.。。。。。。。目前想到要用7419
    發(fā)表于 10-05 22:48

    llabview中國挑戰(zhàn)賽第一題l

    數(shù)列。(義大利語:Successione二
    發(fā)表于 07-18 06:12

    數(shù)列

    生成數(shù)列,并求出其中偶數(shù)項之和,使用09版本編寫
    發(fā)表于 08-20 19:59

    求助,ARM DS-5課程作業(yè)不會寫,誰能代寫,500元

    `求助,ARM DS-5課程作業(yè)不會寫,誰能代寫,酬勞是500元主要內(nèi)容是用匯編寫寫兩個計算數(shù)列的函數(shù),詳細要求見附件`
    發(fā)表于 02-24 10:39

    exe程序之時鐘設計

    exe:exe程序之時鐘設計
    發(fā)表于 12-26 11:14

    10個經(jīng)典的C語言面試基礎算法及代碼

    1、計算Fibonacci數(shù)列Fibonacci數(shù)列又稱
    發(fā)表于 07-25 17:07

    ESP32退避算法實現(xiàn)

    ESP32退避算法實現(xiàn)IOT連接延時二進制指數(shù)退避算法利用數(shù)列
    發(fā)表于 01-11 08:28

    任務和函數(shù)的區(qū)別?

    人工智能的不斷發(fā)展,機器學習這門技術(shù)也越來越重要,很多人都開啟了學習機器學習,本文就介紹了機器學習的基礎內(nèi)容。提示:以下是本篇文章正文內(nèi)容:1分別用任務和函數(shù)實現(xiàn)
    發(fā)表于 02-09 07:47

    C語言教程之數(shù)列

    C語言教程之數(shù)列,很好的C語言資料,快來學習吧。
    發(fā)表于 04-22 11:06 ?0次下載

    Verilog數(shù)字系統(tǒng)設計——任務和函數(shù)一(數(shù)列

    隨著人工智能的不斷發(fā)展,機器學習這門技術(shù)也越來越重要,很多人都開啟了學習機器學習,本文就介紹了機器學習的基礎內(nèi)容。提示:以下是本篇文章正文內(nèi)容:1 分別用任務和函數(shù)實現(xiàn)
    發(fā)表于 12-05 19:06 ?9次下載
    Verilog數(shù)字系統(tǒng)設計——任務和函數(shù)一(<b class='flag-5'>斐</b><b class='flag-5'>波</b><b class='flag-5'>那</b><b class='flag-5'>契</b><b class='flag-5'>數(shù)列</b>)

    用遞歸函數(shù)計算數(shù)列中的第n項值

    編寫一個遞歸函數(shù),用于計算數(shù)列中的第n項值,并在主函數(shù)中調(diào)用該函數(shù)輸出
    的頭像 發(fā)表于 06-07 11:30 ?2605次閱讀

    關(guān)于數(shù)學理論的經(jīng)典問題

    留下來的畫像來看,他的神韻頗似晚他三個世紀的同胞畫家拉斐爾。
    的頭像 發(fā)表于 06-25 09:59 ?687次閱讀
    關(guān)于<b class='flag-5'>斐</b><b class='flag-5'>波</b><b class='flag-5'>那</b><b class='flag-5'>契</b>數(shù)學理論的經(jīng)典問題

    用python編寫數(shù)列

    數(shù)列是一個非常經(jīng)典的數(shù)學問題,它具有廣泛的應用和研究價值。在這篇文章中,我將使用Python編寫
    的頭像 發(fā)表于 11-21 15:04 ?1001次閱讀