我想实现一个递归函数来计算两个数字的gcd,但我的代码不工作,任何想法有什么不对?递归函数来计算最大公约数
public static int gcd(int a, int b) {
if (a == b) {
return a;
}
while (a != b) {
if (a > b) {
gcd(a - b, b);
} else if (b > a) {
gcd(a, b - a);
}
}
return a;
}
一般来说,递归策略和'while'循环是互斥的。希望这有助于提示。 – CollinD