递归实现
public class FibonacciSequence {
/**
* 斐波拉契数列的递归实现
* @param num 最大数字
*/
public int fibonacciSequenceWithRecursion(int num){
//F(0)=0,F(1)=1,F(n)=F(n-1)+F(n-2)
if (num > 1){
return fibonacciSequenceWithRecursion(num - 1) + fibonacciSequenceWithRecursion(num - 2);
}
else if ((num == 1) || (num == 0)){
return 1;
}
return 1;
}
public static void main(String[] args){
//标准输入接收数据
int num = 34;
FibonacciSequence f = new FibonacciSequence();
//f.fibonacci(num);
//输出数列数据
for (int i = 0; f.fibonacciSequenceWithRecursion(i) <= num; ++i){
System.out.print(f.fibonacciSequenceWithRecursion(i)+" ,");
}
}
}
—