package com.ywx.count; /** * 斐波那契数列(地推方式要比递归方式的效率要高) * @author Vashon(yangwenxue) * date:20150320 */ public class Feibonaqi { public static void main(String args[]){ FeibonaqiInstance f=new FeibonaqiInstance(); System.out.println("递归方式实现:"+f.fibonacci(43)); System.out.println("地推方式实现:"+f.fibonacciNormal(43)); } } class FeibonaqiInstance{ /** * 递归方式实现 * @param n * @return */ public static int fibonacci(int n){ if(n<=2){ return 1; }else{ return fibonacci(n-1)+fibonacci(n-2); } } /** * 递推方式实现 * @param n * @return */ public static int fibonacciNormal(int n){ if(n<=2){ return 1; } int n1=1,n2=1,sum=0; for(int i=0;i<n-2;i++){ sum=n1+n2; n1=n2; n2=sum; } return sum; } }
版权声明:本文为博主原创文章,未经博主允许不得转载。