「更相减损法」和「欧几里得算法」
欧几里得算法
int gcd(int a, int b) { // 欧几里得算法
return b == 0 ? a : gcd(b, a % b);
}
更相减损法
int gcd(int a, int b) { // 更相减损法
while (true) {
if (a > b) a -= b;
else if (a < b) b -= a;
else return a;
}
}