Fibonacci数列编程实现(Java语言描述)

编程实现——递归/非递归

public class Fibonacci {

    private static int fibonacci1(int n) {
        if(n <= 1) {
            return 1;
        } else {
            return fibonacci1(n - 1) + fibonacci1(n - 2);
        }
    }

    private static int fibonacci2(int n) {
        if(n <= 1) {
            return 1;
        }
        int last = 1;
        int nextToLast = 1;
        int answer = 1;
        for(int i = 2; i <= n; i++) {
            answer = last + nextToLast;
            nextToLast = last;
            last = answer;
        }
        return answer;
    }

    public static void main(String [] args) {
        System.out.println("fibonacci(10) = " + fibonacci1(10));
        System.out.println("fibonacci(10) = " + fibonacci2(10));
    }

}
发布了599 篇原创文章 · 获赞 1211 · 访问量 43万+

猜你喜欢

转载自blog.csdn.net/weixin_43896318/article/details/104508925