斐波那契數列-java程式設計:三種方法實現斐波那契數列
題目要求:編寫程式在控制檯輸出斐波那契數列前20項,每輸出5個數換行
//java程式設計:三種方法實現斐波那契數列
//其一方法:
//java程式設計:三種方法實現斐波那契數列public class Demo2 { // 定義三個變數方法 public static void main(String[] args) { int a = 1, b = 1, c = 0; System.out.println("斐波那契數列前20項為:"); System.out.print(a + "\t" + b + "\t"); //因為前面還有兩個1、1 所以i<=18 for (int i = 1; i <= 18; i++) { c = a + b; a = b; b = c; System.out.print(c + "\t"); if ((i + 2) % 5 == 0) System.out.println(); } } }
//其二方法:
public class Demo3 { // 定義陣列方法 public static void main(String[] args) { int arr[] = new int[20]; arr[0] = arr[1] = 1; for (int i = 2; i < arr.length; i++) { arr[i] = arr[i - 1] + arr[i - 2]; } System.out.println("斐波那契數列的前20項如下所示:"); for (int i = 0; i < arr.length; i++) { if (i % 5 == 0) System.out.println(); System.out.print(arr[i] + "\t"); } } }
//java程式設計:三種方法實現斐波那契數列
//其三方法:
這道兔子題的實質就是斐波那契數列:有一對兔子,從出生後第3個月起每個月都生一對兔子,小兔子長到第三個月後每個月又生一對兔子,假如兔子都不死,問每個月的兔子總數為多少?,現在從變數、陣列、遞迴三個角度出發解決這個puzzle,當然還有其它的方法,同一道題用各種不同的思路去思考解決,也是對知識綜合運用的鍛鍊吧。public class Demo4 { // 使用遞迴方法 private static int getFibo(int i) { if (i == 1 || i == 2) return 1; else return getFibo(i - 1) + getFibo(i - 2); } public static void main(String[] args) { System.out.println("斐波那契數列的前20項為:"); for (int j = 1; j <= 20; j++) { System.out.print(getFibo(j) + "\t"); if (j % 5 == 0) System.out.println(); } } }
相關推薦
斐波那契數列-java程式設計:三種方法實現斐波那契數列
題目要求:編寫程式在控制檯輸出斐波那契數列前20項,每輸出5個數換行 //java程式設計:三種方法實現斐波那契數列 //其一方法: public class Demo2 { // 定義三個變數方法
java程式設計:三種方法實現斐波那契數列
題目要求:編寫程式在控制檯輸出斐波那契數列前20項,每輸出5個數換行 方法一:public class Fibonacci1{ //定義三個變數方法public static void main(String[] args) {int a=1, b=1, c=0;Syst
用遞迴,迭代,通項公式三種方法實現斐波那契數列求解
斐波那契數列指的是這樣一個數列:1、1、2、3、5、8、13、21、…… 這個數列從第三項開始,每一項都等於前兩項之和。它的通項公式為:(1/√5)*{[(1+√5)/2]^n -[(1-√5)/2]^n}(又叫“比內公式”,是用無理數表示有理數的一個範例。)(√5表
python使用遞迴、尾遞迴、迴圈三種方式實現斐波那契數列
在最開始的時候所有的斐波那契程式碼都是使用遞迴的方式來寫的,遞迴有很多的缺點,執行效率低下,浪費資源,還有可能會造成棧溢位,而遞迴的程式的優點也是很明顯的,就是結構層次很清晰,易於理解 可以使用迴圈的方式來取代遞迴,當然也可以使用尾遞迴的方式來實現。
求菲波那切數列數列第n項三種方法小結
菲波那切數列數列的應用場景還是比較多的,比如可以在考試的時候考你遞迴啊,早上碰到的一道題就是這樣,驕傲地寫下遞迴方程,結果TLE了,然後旁邊的大神給我說了一個叫滾動陣列的東西。。。題目是這樣的You
Python C/S 網路程式設計(一)之 三種方法實現天氣預報小程式
1. 首先明白下協議棧和庫的概念: 協議棧(Protocol Stack): 是指網路中各層協議的總和,其形象的反映了一個網路中檔案傳輸的過程:由上層協議到底層協議,再由底層協議到上層協議。 庫(Library):主要用來解析要使用的網路通訊協議,包含Python內建標準庫
MongoDB儲存Java物件的三種方法
MongoDB有三種方法來儲存java物件,一種是通過類實現DBObject介面,一種是利用spring-mongodb工具的物件對映功能,把java物件轉換成MongoDB的BSON文件,一種是通過序列化類例項,轉成二進位制儲存,MongoDB是支援二進位制的資料格式的
第六章:三種方法輸出陣列元素,二維陣列的輸出方式
1使用陣列名和下標 #include<iostream> using namespace std; int main() { int a[10]={1,2,3,4,5,6,7,8,9,10}; for(int i=0;i<10;i++) cout<&
java註釋的三種方法 以及快捷鍵的使用
型別 註釋形式 快捷鍵 取消註釋快捷鍵 單行註釋 // 註釋內容 ctrl+/ ctrl+/ 多行註釋 /*... 註釋內容....*/ ctr
linux配置java環境變數三種方法
1. 修改/etc/profile檔案 如果你的計算機僅僅作為開發使用時推薦使用這種方法,因為所有使用者的shell都有權使用這些環境變數,可能會給系統帶來安全性問題。 ·用文字編輯器開啟/etc/profile ·在profile檔案末尾加入: export JAVA_HOME=/usr/share
三種方法實現java呼叫Restful介面
1,基本介紹 Restful介面的呼叫,前端一般使用ajax呼叫,後端可以使用的方法比較多, 本次介紹三種: 1.HttpURLConnection實現 2.HttpClient實現 3.Spring的RestTemplat
SPARK官方例項:兩種方法實現隨機森林模型(ML/MLlib)
在spark2.0以上版本中,存在兩種對機器學習演算法的實現庫MLlib與ML,比如隨機森林:org.apache.spark.mllib.tree.RandomForest 和org.apache.spark.ml.classification.RandomForestCl
java實現斐波那契數列的三種方法
Java實現斐波那契數列的三種方法 什麼是斐波那契數列 這裡借用一下度孃的一段話:斐波那契數列(Fibonacci sequence),又稱黃金分割數列、因數學家列昂納多·斐波那契(Leonardoda Fibonacci)以兔子繁殖為例子而引入,故又稱為“兔子數列”,指的是
使用Java列印斐波那契數列的三種方法
斐波那契數列(Fibonacci sequence)的定義:斐波那契數列指的是這樣一個數列 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233,377,610,987,1597,2584,4181,6765,10946,
Python中幾種常見方法實現斐波那契數列
Python常見斐波那契解決方案 n=35 #1.遞迴求斐波那契 def fibo(n): return 1 if n<3 else fibo(n-1)+fibo(n-2) print(fibo(n)) #2.迴圈求斐波那契 f1,f2=0,1 for i
三種方法求解Fibonacci(斐波那契)數列
所謂Fibonacci數列是指這樣一種數列,它的前兩項均為1,從第三項開始各項均為前兩項之和。用數學公式表示出來就是: 1 &
3種方法求解斐波那契數列
Fibonacci Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 7241 Accepted: 5131 Description In the Fibonacci integer sequence, F0 = 0, F
實現斐波那契數列的三種方法
斐波那契數列又稱黃金分割數列。它的特點是從第3個數開始,每一個數都等於前面兩個數相加。 例:0 1 1 2 3 5 8 13 21.。。。。。 從上我們可以總結出以下規
Java併發程式設計:4種執行緒池和緩衝佇列BlockingQueue
一. 執行緒池簡介 1. 執行緒池的概念: 執行緒池就是首先建立一些執行緒,它們的集合稱為執行緒池。使用執行緒池可以很好地提高效能,執行緒池在系統啟動時即建立大量空閒的執行緒,程式將一個任務傳給執行緒池,執行緒池就會啟動一
Java程式設計:刪除 List 元素的三種正確方法(面試與開發必備)
刪除 List 中的元素會產生兩個問題: 刪除元素後 List 的元素數量會發生變化; 對 List 進行刪除操作可能會產生併發問題; 我們通過程式碼示例演示正確的刪除邏輯 package com.ips.list; import java.util.ArrayList; import jav