斐波那契数列是一组数字,以 1 或 0 开头,后跟 1,并根据每个数字(称为斐波那契数)等于前两个数字之和的规则进行处理。自下而上的方法首先侧重于在基础层面解决较小的问题,然后将它们整合为一个完整的解决方案。
时间复杂度-O(N)
空间复杂度-O(N)
public class DynamicProgramming{ public int fibonacciBottomupApproach(int n){ int[] dpArr = new int[150]; dpArr[1] = 1; for (int i = 2; i <= n; i++){ dpArr[i] = dpArr[i - 1] + dpArr[i - 2]; } return dpArr[n]; } } static void Main(string[] args){ DynamicProgramming dp = new DynamicProgramming(); Console.WriteLine(dp.fibonacciBottomupApproach(5)); }输出结果
5