Python 3.x 在执行操作时使大输入变小
我想让这个程序在大输入时运行得更快Python 3.x 在执行操作时使大输入变小,python-3.x,time-complexity,Python 3.x,Time Complexity,我想让这个程序在大输入时运行得更快 def count1(i,j,k,n): b = k while n > 0: b = i*b while b > j: b = b - j n = n - 1 return b 所以,在考虑了它之后,使用mod操作出现在脑海中。因此,上面的代码再次被修改 def count1(i,j,k,n): b = k while n >
def count1(i,j,k,n):
b = k
while n > 0:
b = i*b
while b > j:
b = b - j
n = n - 1
return b
所以,在考虑了它之后,使用mod操作出现在脑海中。因此,上面的代码再次被修改
def count1(i,j,k,n):
b = k
while n > 0:
b = ((i%j)*(b%j))%j
while b > j:
b = b - j
n = n - 1
return b
所以在做了一些测试之后,这个实现确实更快了,但是还不够快。在对大数字执行这样的操作时,是否有更多的方法使其变小?有没有一种方法可以优化此代码,使其在非常大的输入下快速运行?使用cython或numba可能是提高原始性能的最佳方法,请看cython教程我确实看过了,但它并不完全是我想要的。我想更快地实现上面的代码