哪种方法可以更快地找到给定数字的GCD(a,b)?
素数因子化
(或)
以下方法
int gcd(int a, int b)
{
return (b==0)?a:gcd(b,a%b);
}
答案 0 :(得分:1)
这取决于您输入的范围以及Prime factorization的实施情况。 由于后者对于大数字没有有效的算法,似乎可以实现GCD以提供更有效的结果。
重点是如何在算法中计算模数 - 假设它被有效实施(不使用除法),这种GCD实现(也称为Euclidean algorithm)应该更有效。