C# Fibonacci Sequence

下面对于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();

        }



    }

}

 

你可能感兴趣的:(fibonacci)