【问题标题】:Generalised Fibonacci广义斐波那契
【发布时间】:2014-08-09 12:01:03
【问题描述】:

如何在 log(n) 时间内找到循环的第 n 项。

F[n]=F[n-1]+F[n-3]
F[2]=1;
F[3]=2;
F[4]=3;
F[5]=4;

我无法创建求幂所需的矩阵。 抱歉,这似乎有点离题。

谢谢,但我找到了答案。 https://math.stackexchange.com/questions/891964/generalised-fibonacci/891979#891979

【问题讨论】:

标签: fibonacci


【解决方案1】:

第 n 个斐波那契数由下式给出:

f(n) = Floor(phi^n / sqrt(5) + 1/2)

在哪里

phi = (1 + sqrt(5)) / 2

假设原始数学运算(+、-、* 和 /)为 O(1),您可以使用此结果在 O(log n) 时间(O(log n) 内计算第 n 个斐波那契数,因为公式中的取幂)。

参考: nth fibonacci number in sublinear time

【讨论】:

  • 我不是为斐波那契数列做的……而是类似的东西。不管怎么说,还是要谢谢你。我也不认为你的答案总是能给出更高的 n 值的准确结果。
猜你喜欢
  • 2012-12-29
  • 1970-01-01
  • 2015-06-05
  • 2014-05-23
  • 2013-08-09
  • 2011-11-27
  • 2013-03-31
  • 2014-05-03
  • 2010-12-03
相关资源
最近更新 更多