欧几里得算法与欧几里得拓展算法python版

一、欧几里得算法,采用递归,代码较为简单不加注释了,如果不懂可以留言

a = 123456
b = 7890
def myojilide(a,b):
    if b == 0:
        print(a)
    else:
        myojilide(b,a%b)
myojilide(a,b)

二、欧几里得拓展算法,采用递归,代码较为简单不加注释了,如果不懂可以留言

def myojilide(a,b):
    if b == 0:
        return (1,0,a)
    (x, y, r) = myojilide(b,a%b)
    temp = x
    x = y
    y = temp - int(a / b) * y
    return (x,y,r)

print(myojilide(123456,7890))

 

你可能感兴趣的:(python,递归)