java - 我需要的任务的有效解决方案

标签 java performance algorithm dynamic-programming

我只是解决了这个问题,但想知道更有效的矩阵乘法方法

 M = | 1 0 3 |
     | 1 0 2 |
     | 0 5 0 |

f[n] = M^n

我已经使用 Exponentiation_by_squaring 实现了

还有比这更有效的吗?

最佳答案

我想,这实际上更适合数学,因为有一个封闭形式的解决方案。是Linear homogeneous recurrence relations with constant coefficients的系统.

另一种可能性:您可以通过推导两个步骤的公式来使程序加速两倍,即通过 RR(i-2) 表达 RR(i) 等> 等

而且这个可以重复,所以你可以跳得更快。

关于java - 我需要的任务的有效解决方案,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25659045/

相关文章:

java - JFreeChart图表渲染问题

ruby - 如何改进 Netbeans 的 ruby​​ 慢性能?

c++ - 检测某些整数是否具有特定值的位技巧

algorithm - Big(O) 机器依赖吗?

java - 机器人不会返回之前所在的位置

java - Selenium Webdriver AJAX - 如何等待请求完成

java - 在java中实现乘法算法

java - Eclipse:继承另一个项目上的Java类

java - 用最少的迭代次数求均值

python - 优化部分字典键匹配