C#使用迭代法实现Fibnaci数列


本文实例讲述了C#使用迭代法实现Fibnaci数列的方法。分享给大家供大家参考。具体分析如下:

下面对于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#程序设计有所帮助。


« 
» 
快速导航

Copyright © 2016 phpStudy | 豫ICP备2021030365号-3