當前位置:編程學習大全網 - 編程軟體 - java判斷壹個數是否斐波那契

java判斷壹個數是否斐波那契

斐波納契數列,又稱黃金分割數列,指的是這樣壹個數列:1、1、2、3、5、8、13、21、……在數學上,斐波納契數列以如下被以遞歸的方法定義:F0=0,F1=1,Fn=F(n-1)+F(n-2)(n>=2,n∈N*)。

以下是Java代碼實現(遞歸與遞推兩種方式):

import?java.util.Scanner;

public?class?Fibonacci?{

public?static?void?main(String[]?args)?{

Scanner?scanner?=?new?Scanner(System.in);

System.out.println("Please?input?this?fibonacci?n:");

int?n?=?scanner.nextInt();?//?假設輸入為大於零的整數

System.out.println(fibonacci(6)?+?":"?+?fibonacciNormal(6));

int?sum?=?0;

for(int?i?=?1;?i?<=?n;?i++){

sum?+=?fibonacci(i);

}

System.out.println(sum);

}

//?遞歸實現方式

public?static?int?fibonacci(int?n){

if(n?<=?2){

return?1;

}else{

return?fibonacci(n-1)?+?fibonacci(n-2);

}

}

//?遞推實現方式

public?static?int?fibonacciNormal(int?n){

if(n?<=?2){

return?1;

}

int?n1?=?1,?n2?=?1,?sn?=?0;

for(int?i?=?0;?i?<?n?-?2;?i?++){

sn?=?n1?+?n2;

n1?=?n2;

n2?=?sn;

}

return?sn;

}

}

  • 上一篇:江西信息應用職業技術學院怎麽樣?
  • 下一篇:淺談教師資格證計算機考試
  • copyright 2024編程學習大全網