N7-斐波那契数列的第n项

题目描述

大家都知道斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项(从0开始,第0项为0)。

n<=39

public class N7_Fibonacci {
	//递归实现
	 public int Fibonacci(int n) {
		 if(n==0) {
			 return 0;
		 }
		 if(n==1||n==2) {
			 return 1;
		 }
		return Fibonacci(n-1)+Fibonacci(n-2);
		 }
	 //非递归实现
	 public int Fibonacci2(int n) {
		 if(n==0) {
			 return 0;
		 }
		 if(n==1||n==2) {
			 return 1;
		 }
		 int f1=1;
		 int f2=0;
		 int c=0;
		 for(int i=2;i<=n;i++) {
			 c=f1+f2;
			 f2=f1;
			 f1=c;
		 }
		 return c;
	 }
		 
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		N7_Fibonacci n7=new N7_Fibonacci();
		System.out.println(n7.Fibonacci(6));
		System.out.println(n7.Fibonacci2(6));
	}

}

  

posted @ 2019-05-15 11:07  柯汐  阅读(276)  评论(0)    收藏  举报