首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Fibonacci矩阵算法的运行时间

Fibonacci矩阵算法的运行时间
EN

Stack Overflow用户
提问于 2017-01-24 04:52:22
回答 1查看 1.5K关注 0票数 0

我试着向达斯古普塔、帕帕迪米特里欧和瓦兹拉尼学习算法。我发现了一个我无法回答的问题,任何帮助/暗示都将不胜感激。

找到Fibonacci级数的方法之一是使用: Fn Fn+1=0 1 1 1^n。F0 F1

按照我的说法,运行时间应该是O(n^2 * Log n)"n^2"用于n位数的乘法,对于乘法次数需要"log“。

然而,这本书表明运行时间将是O(M(n)) where M(n)=theta(n^a), 1<=a<=2。你能告诉我哪里出了问题吗?

EN

回答 1

Stack Overflow用户

发布于 2017-01-24 06:21:58

计算斐波那契数的两种可能方法:

1)在expression中,有一个封闭形式的表达式,通过将它作为线性递归来导出。

2)这似乎是可对角化的矩阵,因此您可以将它写成PDP^-1,其中D是对角的,(PDP^-1)^n=P D^n P^-1。因为D是对角线的,所以你可以用每个对角线元素的幂来计算它的幂。事实上,fibonacci矩阵是在application中明确提到的。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41820243

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档