各种方法实现斐波那契 数列 package L6array;import java.util.ArrayList;import java.util.List;import java.util.Scanner;/* * 打印斐波那契 数列 * 0、1、1、2、3、5、8、13、21、34、55、89、144、233 * jerrychen51@16
package L6array; import java.util.ArrayList; import java.util.List; import java.util.Scanner; /* * 打印斐波那契 数列 * 0、1、1、2、3、5、8、13、21、34、55、89、144、233 * jerrychen51@163.com * */ public class FibonacciSeq { /*普通方法*/ static List FiSeq(int num){ List FS =new ArrayList(); //用int 会出现负数 double arr[]=new double[num+1]; arr[0]=0; FS.add(arr[0]); arr[1]=1; FS.add(arr[1]); for(int i=2;i<=num;i++){ arr[i]=arr[i-1]+arr[i-2]; FS.add(arr[i]); } return FS; } /*递归方法*/ static int recurFB(int num){ if(num<=1) return num; else return recurFB(num-1)+recurFB(num-2); } static void dispREFB(int num){ for(int i=0;i<=num;i++) //i替换成num 输出值不变,要有=不然少最后一个 System.out.print(recurFB(i)+" "); } public static void main(String[] args) { System.out.println("输入数列个数"); Scanner in=new Scanner(System.in); int num=in.nextInt(); dispREFB(num); //System.out.println(FiSeq(num)); } }