【发布时间】:2012-02-15 01:47:14
【问题描述】:
所以我正在使用 Binet 公式和 GNU MP 库来计算斐波那契数。我正在尝试计算算法的渐近运行时间。
对于 Fib(n),我将变量设置为 n 位精度;因此我相信将两个数字相乘是 n Log(n)。求幂是,我相信 n Log(n) 乘法;所以我相信我有 n Log(n)Log(n Log(n))。这是正确的,无论是在假设(乘以浮点数和乘以指数乘以整数指数)和结论?
如果我的精度很高,并且我使用精度 g(n);然后我认为这减少到 g(n) Log(g(n));但是我认为 g(n) 应该是 g(n)=n Log(phi)+1;这不应该对渐近线产生真正的影响。
【问题讨论】:
-
计算只涉及乘法和取幂对吗? exp(x * log(\phi)) (保留预先计算的 log(\phi) )。
-
您正在使用
n来表示一个数字及其位数:|