/** * 题目:大家都知道斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项(从0开始,第0项为0)。n<=39 * 斐波那契数列: * n=0,f(n)=0; * n=1,f(n)=1; * n>=2,f(n)=f(n-1)+f(n-2) * 解题思路: * 将中间的计算结果保留,用来下一次计算 * 用递归会重复计算很多数据,这样用循环的方式实现递归,极大地提高时间效率 * */ public class P76_Fibonacci { public int Fibonacci(int n){ int result = 0; if (n == 0 || n == 1) { result = n; } int temp1 = 0; int temp2 = 1; for (int i = 2; i <= n; i++) { result = temp1 + temp2; temp1 = temp2; temp2 = result; } return result; } public static void main(String[] args) { int n = 3; P76_Fibonacci test = new P76_Fibonacci(); int result = test.Fibonacci(n); System.out.print(result); } }
剑指offer:斐波纳契数列(java)
猜你喜欢
转载自blog.csdn.net/Sunshine_liang1/article/details/82467946
今日推荐
周排行