本文實例講述了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#程序設計有所幫助。
新聞熱點
疑難解答