最大公因数和最小公倍数求法(common divisor and common multiple)
欧几里德算法也就是辗转相除法,有着2000年的历史了。欧几里德算法依据的算法理论是一个定理:
gcd(a,b) = gcd(b,a mod b)。
common divisor: 最大公因数
int gcd(int m, int n)
{
if(m<n)
{
int tmp;
tmp=m;
m=n;
n=tmp;
}
if(n==0)
{
return m;
}
else
return gcd(n,m%n);
}
common multiple:最小公倍数
int gbs(int m, int n)
{
return m*n/(gcd(m,n));
}
如下:
本文介绍了欧几里德算法(辗转相除法)求解最大公因数(gcd)与最小公倍数(lcm),通过递归或迭代实现,简化了传统算法的复杂度。
4126

被折叠的 条评论
为什么被折叠?



