Java使用递归求解斐波那契数列

斐波那契数列:指的是这样一个数列 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233,377,610,987,1597,2584,4181,6765,10946,17711,28657,46368……
注意:此时我们需要注意的是该数列第一项是0,第二项是1,接下来的每一项则是前两项之和
思路:这个题我们需要用到递归的方法,首先我们需要先解决数列前两项已知的项,我们首先定义一个静态函数feibonaqie(), 在函数当中,我们先利用一个if语句去判断前两项,如果发现是前两项,则直接返回0和1;否则我们返回的值就等于前两项之和,于是我们就可以使用递归函数让我们返回的值为前两项之和。

总结:此类型的题都需要我们熟练使用递归的方法,如果对递归不熟悉的同学可以点击下面这个链接进入我的另外一篇博客对递归方法进行学习。递归学习

import java.util.Scanner;
public class Fibonaqie {
    public static long feibonaqie(long number)
    {
        if (number==0||number==1)
        {
            return number;
        }
        else
        {
            return feibonaqie(number-1)+feibonaqie(number-2);
        }
    }
    public static void main(String args[])
    {
        Scanner input = new Scanner(System.in);
        System.out.println("请输入需要计算第几项的值:");
        long number = input.nextLong();
        System.out.println("第"+number+"项的斐波那锲值为:"+feibonaqie(number));
    }
}

你可能感兴趣的:(java编程,java,算法)