擅长:python、mysql、java
<p>您给出的伪代码称为欧几里德算法。它是基于除法的,x和y的顺序并不重要</p>
<pre><code>def ggt2(a, b):
while b != 0:
t = b
b = a % b
a = t
return a
ggt2(24, 60)
ggt2(60, 24)
</code></pre>
<p>输出:</p>
<pre><code>12
12
</code></pre>
<p>顺序对于基于减法的算法很重要,这就是为什么要求您在<code>x < y</code>时切换<code>x,y</code></p>
<p>阅读<a href="https://en.wikipedia.org/wiki/Euclidean_algorithm" rel="nofollow noreferrer">wiki</a>以理解这两种算法</p>