显然使用的递归方法解决斐波那契数列问题,效率并不高,运用递归方法时间复杂度和空间复杂度是很大的。
接下来我会把我学习到的一种效率较高并且其空间复杂度较小的方法介绍一波:
动态规划:由底向顶逐步迭代求得斐波那契数列的第n项
传统的解决方法是运用公式:F(n-1)+ F(n+1);而这种方法是运用g,f 两个变量分别的的迭代变换,即:
g = g + f ;
f = g - f ;
例:g = 1; f = 0;
1.
g = 1 + 0 = 1;
f = 1 - 0 = 1;
2.
g = 1 + 1 = 2;
f = 2 - 1 = 1;
3.
g = 2 + 1 = 3;
f = 3 - 1 = 2;
依次迭代计算,最后的g就是我们所要求的斐波那契数列第n项
#