求最大公约数的算法(整理)

来源:互联网 发布:js检查邮箱格式 编辑:程序博客网 时间:2024/05/17 09:39

 

 

算法一:更相减损术,有名“等值算法”

实例:求91 和 49的最大公约数

解法:  91   49

           49    42

           42    7

           35    7

           28    7

           21    7

           14    7

           7      7

这里的7就叫做等数;便是91和49的最大公约数。

算法二:辗转相除发,有名“欧几里德算法”

精髓:gcd(a,b) = gcd(b,a mod b)

条件:a,b 为非负整数,并且不能同时为零。且a>b

 

懂或者不懂他就是这个样子!

举例:

gcd(2322,654) = gcd(654,360) = gcd(360,294) = gcd(294,66) = gcd(66,30) = gcd(30,6) = gcd(6,0) = 6

 


 

 

原创粉丝点击