我最近做了一个测试...这个问题说来话长,解决方案归结为 F(n) = 2*F(n-1) + 2*F(n-2)...
我有一个使用动态编程的 O(n) 解决方案......但是,考官并不满意......
我的解决方案是在计算时将每个 F(n) 简单地存储在一个数组中。花了 O(n) 时间。由于我们只需要前两个元素,因此只需使用两个变量,就可以解决空间问题。
但是 O(n) 还不够快...
该函数看起来像斐波那契函数,并且可以在 O(lg n) 时间内生成一个斐波那契数......但我无法为我的问题获得 O(lg n) 求解。
所以我的问题是如何提高函数的时间复杂度?