如何估算算法的运行时间?

时间:2018-07-19 21:23:00

标签: python performance

一段时间以来,我一直在运行此代码:

import time

start = time.time()
a = 0
for i in range(13,926391025618):
  a += i
end = time.time()
print(end - start)
start = time.time()
a = 926391025618*(926391025618+1)*0.5 - 13*(13+1)/2
end = time.time()
print(end - start)

我想知道-我的Intel i5 2.3 GHz双核处理器(TurboBoost:3.6 GHz)需要多长时间才能结束运行。 它会在不到48小时内发生吗?

1 个答案:

答案 0 :(得分:0)

您不能真的,因为即使您现在使用的是处理器,您也不知道有多少参数会影响性能。

还有哪些其他进程正在运行? 这些过程对性能有多大影响? 内存缓存是否得到有效利用?等... 而且,处理器的性能也会受到温度和磨损程度的影响。

衡量这一点的最佳方法是计算时间复杂度,定期选择一些时间样本以大致了解程序某个点已经经过了多少时间才能推断出剩余时间。