色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

python 更相減損法

錢良釵2年前8瀏覽0評論

在python中,用于求解兩個數最大公約數的算法有多種,其中一種較為優秀的算法為更相減損法。

更相減損法是一種比較古老的求最大公約數的算法,它的基本思想是:只要a、b不相等,就用較大的數減去較小的數,直到兩數相等為止,這時所得到的數就是最大公約數gcd(a,b)。它的算法復雜度為O(logn)。

def gcd(a, b):
if a == b:
return a
if a< b:
a, b = b, a
while a != b:
a = a - b
if a< b:
a, b = b, a
return a

以上是python實現更相減損法的代碼,該函數接受兩個整數作為參數,并返回它們的最大公約數。首先判斷參數a、b是否相等,若相等則直接返回a。如果a小于b,就交換兩個數的值,接下來進入while循環,每次將a減去b,直到a、b相等為止。最后返回a。

需要注意的是,如果輸入的兩個數非常大,該函數的執行時間可能會較長。因此,在實際應用中,我們通常會選擇更快的算法來求最大公約數,例如歐幾里得算法。