下面的函数采用两个整数并计算最大公约数(gcd): -
function mygcd(x, y) {
while(y) var t = y, y = x % y, x = t;
return x;
}
我已经完成了大量的测试用例并逐步完成了代码,看看它是如何实现的,但我对这个方法感到非常难过 - 任何人都可以用简单的语言向我解释这是如何工作的,以及while循环最终如何返回两个值x和y的GCD?
注意:我确实理解代码本身是如何工作的 - 我想知道的是计算最终如何返回正确的结果。