我想實現一個遞歸函數來計算兩個數字的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