一、欧几里得算法
欧几里得算法也称碾转相除法,是目前已知求最大公约数得最快通用方法,具有代码复杂度低、易理解、用途广众多优点。
1.1 欧几里得算法的基本公式
gcd(a,b)= gcd(b,a mod b)
其中gcd表示得是最大公约数的意思,比如 gcd(4,8)=4
mod是取模的意思,算法同取余类似,7mod3=1,即 1=7-2*3
1.2 欧几里得算法的证明
假设gcd(a,b)=r(即a和b的最大公约数为r)
——>存在x、y使 a=x*r,b=y*r,其中x、y互质
假设c=a mod b , 存在d使 c=a-d*b
——>c=a mod b =a-d*b=x*r-d*y*r=(x-d*y)r
——>又因为b=y*r,由欧几里得算法的基本公式 gcd(a,b)&#