Big o 当T(N)=O(2^N)时,如何计算CPU速度增加的影响?

Big o 当T(N)=O(2^N)时,如何计算CPU速度增加的影响?,big-o,Big O,我看到了以下场景:算法A是O(2^n)。我可以选择速度快10倍的CPU,或者选择算法B,即O(n^2)。显然,我会选择算法B,但我需要从数学上证明这一点,而不仅仅是通过推理 有人告诉我,算法B允许我解决一个(2^n/n^2)倍大的问题。这我理解。到目前为止还不错 但它继续说,更快的CPU允许我解决一个问题(n+log 10)倍大(约n+3) 他们如何从(2^n/10)中得到(n+log10)?解决问题所需的时间是工作量除以CPU速度,对于第一个算法,可以表示为(2^n)/速度。速度乘以10,等于

我看到了以下场景:算法A是O(2^n)。我可以选择速度快10倍的CPU,或者选择算法B,即O(n^2)。显然,我会选择算法B,但我需要从数学上证明这一点,而不仅仅是通过推理

有人告诉我,算法B允许我解决一个(2^n/n^2)倍大的问题。这我理解。到目前为止还不错

但它继续说,更快的CPU允许我解决一个问题(n+log 10)倍大(约n+3)


他们如何从(2^n/10)中得到(n+log10)?

解决问题所需的时间是工作量除以CPU速度,对于第一个算法,可以表示为(2^n)/速度。速度乘以10,等于(2^n)/(10*速度)。他们所说的“允许你解决一个更大的问题”的真正含义是“允许你在相同的时间内解决这个更大的问题。”

所以,(2^n)/速度=(2^(n+更大))/(10*速度)。用代数方法求解biggerness,最终得到biggerness=speed log 10