算法_欧几里得算法

Posted coloz

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了算法_欧几里得算法相关的知识,希望对你有一定的参考价值。

求两个数的最大公约数,比如50和15的最大公约数是5,

算法如下:

# 欧几里得  求最大公约数

def gcd(m, n):
    while (n != 0):
        rem = m % n
        m = n
        n = rem

    return m;


# 测试

a = gcd(50, 15)
print(a)

 

假设m>n ,第一次循环后,m替换成n,n则替换成余数rem,继续循环直到余数为0,返回最大公约数.

 

以上是关于算法_欧几里得算法的主要内容,如果未能解决你的问题,请参考以下文章

类欧几里得算法

扩展欧几里得

Python实现欧几里得算法

扩展欧几里得算法详解

[P5170] 类欧几里得算法

拓展欧几里得算法