下面对于Fibonacci数列作基本介绍:
这里li代表fibonacc基本抽样数组名,n代表索引,C# Fibonacci数列迭代法,如:
Fibonacci基数列:1,1,2,3,5,8...
当n<=2时:Fibonacci(n)=1;
当n>2时:Fibonacci(n)=Fibonacci(n-1)+Fibonacci(n-2);
我们可以使用递归或者迭代等方法来进行算法编程,这里介绍迭代方法。
其他算法非递归方法也可以参照如下方式。
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace ConsoleApplication1 { class Program { static List<int> li = new List<int> { 1, 1, 2, 3, 5, 8 }; /// <summary> /// Get Fibonacci Number /// </summary> /// <param name="BaseFN">base number</param> /// <param name="len">titile</param> /// <returns></returns> static int FibonacciNumber(List<int> BaseFN, int len) { if (len <= 2) return 1; else if ((len - 1) <= li.Count) { len -= 1; return li[len - 1] + li[len - 2]; } else { int baselen = li.Count; ; li.Add(li[baselen - 1] + li[baselen - 2]); return FibonacciNumber(li, len); } } static void Main(string[] args) { Console.WriteLine(FibonacciNumber(li,30).ToString()); Console.ReadKey(); } } }