流程圖如下:
創新互聯致力于互聯網品牌建設與網絡營銷,包括網站制作、網站設計、SEO優化、網絡推廣、整站優化營銷策劃推廣、電子商務、移動互聯網營銷等。創新互聯為不同類型的客戶提供良好的互聯網應用定制及解決方案,創新互聯核心團隊十多年專注互聯網開發,積累了豐富的網站經驗,為廣大企業客戶提供一站式企業網站建設服務,在網站建設行業內樹立了良好口碑。
public int Fibonacci(int n) {
? int[] res = {0, 1};
? if(n 2) {
? ? ? return res[n];
? }
? int first = 0;
? int second = 1;
? int fibn = 0;
? for(int i = 2; i = n; i++) {
? ? ? fibn = first + second;
? ? ? first = second;
? ? ? second = fibn;
? }
? return fibn;
}
public static void main(String[] args) {
System.out.println(Fibonacci(35));
}
本節內容是遞歸算法系列之一:斐波那契數列遞歸求解,主要介紹了斐波那契數列的定義,然后用遞歸的實現思想分析了一下斐波那契數列,最后給出了基于 Java 代碼應用遞歸思想實現斐波那契數列的代碼實現及簡單講解。
斐波那契數列(Fibonacci sequence),也稱之為黃金分割數列,由意大利數學家列昂納多?斐波那契(Leonardo Fibonacci)提出。斐波那契數列指的是這樣的一個數列:1、1、2、3、5、8、13、21、34、……,這個數列從第 3 項開始,每一項都等于前面兩項之和。在數學上,斐波那契數列可以被遞推的方法定義如下:
斐波那契數列是數學上面一個經典的例子,并且在日常生活中有很多應用,他還與黃金分割有著密不可分的聯系,而且當 n 趨向于無窮大時,前一項與后一項的比值越來越逼近黃金分割值 0.618。
在這一節中,我們就需要利用遞歸的思想去求解斐波那契數列,當給出一個斐波那契中第幾項的數字,然后求解出對應的斐波那契數值。在之前,我們已經定義了遞歸算法的相關概念,并且明確了需要應用遞歸時候的三要素:
接下來,我們將利用遞歸的知識來解決斐波那契數列問題,明確在斐波那契數列求解問題中的遞歸三要素分別是什么。
例如,當我們求解斐波那契數列中的 F (5) 時,按照定義,我們有:
在說明斐波那契數列的遞歸描述之后,我們看看如何用 Java 代碼來實現對斐波那契數列的計算。
運行結果如下:
代碼中的第 4 行至第 8 行分別調用斐波那契數列計算函數,計算出斐波那契數列中對應 n=1,2,3,4,5 時斐波那契數列的取值,進行結果比較,判斷斐波那契數列程序實現是否正確。代碼中的第 12 行至第 20 行是斐波那契數列應用遞歸方法進行斐波那契數列的計算,按照遞歸的三要素進行計算處理。
本節主要介紹了用遞歸思想求解斐波那契數列,在學完本節課程之后,我們了解到了什么是斐波那契數列,并且將遞歸算法在斐波那契數列中進行了實際應用,需要掌握斐波那契數列的遞歸求解方法,并自己可以實現相關的代碼實現,并清楚里面的每一步邏輯。
思路:
斐波那契數列
第0項是0,第1項是第一個1。
這個數列從第三項開始,每一項都等于前兩項之和。
java代碼如下:
import?java.util.Scanner;
/**
*?斐波那契數列
第0項是0,第1項是第一個1。
這個數列從第三項開始,每一項都等于前兩項之和
*?@author?young
*
*/
public?class?Fei?{
public?static?void?func(int?n)?{
if?(n??3)?{
System.out.println("0,1");
}?else?if?(n??3)?{
int?a=0,?b=1,?c=0;
??System.out.print(a?+?"????"?+?b?+?"????");
??for?(int?i?=?3;?i?=?n;?i++)?{
???c?=?a?+?b;
???a?=?b;
???b?=?c;
???System.out.print(c?+?"????");
??}
}?else?if?(n??0)?{
System.out.println("輸入數字不符合要求");
}
}
public?static?void?main(String[]?args)?{
Fei?f?=?new?Fei();
Scanner?input?=?new?Scanner(System.in);
System.out.print("請輸入斐波那契數列的列數n,按ENTER:");
int?num?=?input.nextInt();
System.out.println("斐波那契數列為:"?);?
func(num);
}
}
運行結果如下:
本文名稱:斐波拉契數列java代碼 斐波拉契數列Java
網頁鏈接:http://vcdvsql.cn/article26/hioccg.html
成都網站建設公司_創新互聯,為您提供網頁設計公司、Google、營銷型網站建設、域名注冊、企業網站制作、網站營銷
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯