递归算法计算斐波那契数
程序员文章站
2022-03-31 10:25:27
...
写递归要确定两个:递归的终止条件;递归表达式。
class Program
{
//递归算法就是自己调用自己
/// <summary>
/// 创建一个返回int类型的递归方法求斐波那契数列
/// 斐波那契数列除了第一个和第二个数为1,从第三个数开始F(n)=F(n-2)+F(n-1)
/// 在程序中可以使用递归算法求出斐波那契数列中的第n个数
/// </summary>
/// <param name="a"></param>
/// <returns></returns>
static int digui(int n)//
{
//在方法中判断n是否为1或者2如果是返回1
if (n==1)
{
return 1;
}
else if (n==2)
{
return 1;
}
//如果不是返回斐波那契公式重新调用自己直到求出所要值
return digui(n - 2) + digui(n - 1);
}
static void Main(string[] args)
{
Console.WriteLine(digui(1));//调用递归算出斐波那契数列第一个数
Console.WriteLine(digui(3));//调用递归算出斐波那契数列第三个数
Console.WriteLine(digui(8));//调用递归算出斐波那契数列第八个数
Console.ReadLine();
}
}
附图: