为什么这段Python代码花费的时间非常长,以计算总和?

时间:2018-02-25 15:25:35

标签: python algorithm code-analysis

我喜欢用渐近符号来探讨这个:大(O),欧米茄和Theta。

这是一小段Python代码。并尝试通过每次提供更大的价值来运行它。如果你看第三种情况(图像),代码通常需要更长的时间来计算总和。

enter image description here

我想知道我是否可以按顺序重写它,会有什么区别吗?如何优化此代码以获取更大的值?谢谢

1 个答案:

答案 0 :(得分:0)

使用numba可以更快地制作相同的算法:

from numba import jit

@jit
def compute(n):
    x = 0
    for i in range(1, n+1):
        x += 1/i
    return x

print(compute(1000000000))