• 欢迎访问开心洋葱网站,在线教程,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站,欢迎加入开心洋葱 QQ群
  • 为方便开心洋葱网用户,开心洋葱官网已经开启复制功能!
  • 欢迎访问开心洋葱网站,手机也能访问哦~欢迎加入开心洋葱多维思维学习平台 QQ群
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏开心洋葱吧~~~~~~~~~~~~~!
  • 由于近期流量激增,小站的ECS没能经的起亲们的访问,本站依然没有盈利,如果各位看如果觉着文字不错,还请看官给小站打个赏~~~~~~~~~~~~~!

C# Fibnaci数列迭代法(非递归)

OC/C/C++ 水墨上仙 2077次浏览

下面对于Fibnaci数列作基本介绍:
这里Fibnaci代表数组名,n代表索引。
如:Fibnaci基数列:1,1,2,3,5,8…
当n<=2时:Fibnaci(n)=1
当n>2时:Fibnaci(n)=Fibnaci(n-1)+Fibnaci(n-2)

我们可以使用递归或者迭代等方法来进行算法编程,这里介绍迭代方法。
其他算法非递归方法也可以参照如下方式。

   public List<int> BaseNumbers = new List<int> { 1, 1, 2, 3, 5, 8 };
        public int GetFibnaceNumber(List<int> baseNumbers, int len)
        {
            if (len <= 2)
            {
                return 1;
            }
            else if ((len - 1) <= BaseNumbers.Count)
            {
                len = len - 1;
                return BaseNumbers[len - 1] + BaseNumbers[len - 2];
            }
            else
            {
                int BaseMaxIndex = BaseNumbers.Count;
                BaseNumbers.Add(BaseNumbers[BaseMaxIndex - 1] + BaseNumbers[BaseMaxIndex - 2]);
                return GetFibnaceNumber(BaseNumbers, len);
            }
        }


开心洋葱 , 版权所有丨如未注明 , 均为原创丨未经授权请勿修改 , 转载请注明C# Fibnaci数列迭代法(非递归)
喜欢 (0)
加载中……