对如下代码实现的欧几里得算法(辗转相除法),执行 gcd(48, 18) 得到的调用序列为( )。
int gcd(int a, int b) {
return b == 0 ? a : gcd(b, a % b);
}
- A. 1 gcd(48,18) -> gcd(18,12) -> gcd(12,6) -> gcd(6,0)
- B. 1 gcd(48,18) -> gcd(30,18) -> gcd(12,18)
- C. 1 gcd(48,18) -> gcd(18,30) -> gcd(30,6)
- D. 1 gcd(48,18) -> gcd(12,18) -> gcd(6,12)
正确答案:A