斐波那契数列-java实现

斐波那契数列(Fibonacci sequence),又称黄金分割数列,因数学家莱昂纳多·斐波那契(Leonardoda Fibonacci)以兔子繁殖为例子而引入,故又称为“兔子数列”,指的是这样一个数列:0、1、1、2、3、5、8、13、21、34 。可以其简写为 img

使用Java程序实现斐波那契数列某一位的值。

代码实现方式

第一种方式(递归)

public int fibonacci (int n) {
    if (n == 1 || n ==2) return 1;
    else return fibonacci(n - 1) + fibonacci(n - 2);
}

第二种方式(数组)

public int fibonacci(int n) {
    if (n <= 2) return 1;
    int[] num = new int[n];
    num[0] = 1;num[1] = 1;
    for (int i = 2; i < n; i++) {
        num[i] = num[i-1] + num[i-2];
    }
    System.out.println(Arrays.toString(num));
    return num[n-1];
}

第二种方式(递推)

public int fibonacci(int n){
    if (n <= 2) return 1;
    int result=1,x=1,temp;
    for (int i = 2; i < n; i++) {
        temp = result;
        result = result + x;
        x = temp;
    }
    return result;
}
posted @ 2021-05-25 00:45  ilyar1015  阅读(361)  评论(0编辑  收藏  举报