小编rac*_*rma的帖子

为什么python的内置乘法如此之快

所以前几天我在python中尝试了一些东西,我试图在python中编写一个自定义乘法函数

def multi(x, y):
    z = 0
    while y > 0:
        z = z + x
        y = y - 1
    return z
Run Code Online (Sandbox Code Playgroud)

然而,当我用非常大的数字运行时,如(1 << 90)和(1 << 45),即(2 ^ 90)*(2 ^ 45).计算花了很长时间.所以我试着研究不同类型的乘法,比如在那里实现的俄罗斯农民乘法技术,它非常快但不像多(x,y)那么可读

def russian_peasant(x, y):
    z = 0
    while y > 0:
        if y % 2 == 1: z = z + x
        x = x << 1
        y = y >> 1
    return z 
Run Code Online (Sandbox Code Playgroud)

我想要你回答的是如何编程语言如python乘以数字?

python algorithm

6
推荐指数
3
解决办法
5049
查看次数

标签 统计

algorithm ×1

python ×1