日期:2014-05-20  浏览次数:21130 次

用递归求1,1,2,3,5,8,13,21,……第三十个数是多少?
1,1,2,3,5,8,13,21,…… 用递归算法求第三十个数是多少? 求解决方案,谢谢!

------解决方案--------------------
斐波那契static int Fibonacci(int index)
{
return index <= 2 ? 1 : Fibonacci(index - 1) + Fibonacci(index - 2);
}

Func<int, int> Fibonacci = null;
Fibonacci = i => i <= 2 ? 1 : Fibonacci(i - 1) + Fibonacci(i - 2);
Console.WriteLine(Fibonacci(30));
Console.ReadKey();

------解决方案--------------------

private int fibo(int n) //写递归方法一般要有参数
{
if(n==1 || n==2)
{
return 1; //写递归方法应该首先就要确定什么时候递归终结
}
else
{
rerurn fibo(n-1)+fibo(n-2) //这个类第于高中的数学归纳法
}

}