Math 对GCD算法的直观理解

Math 对GCD算法的直观理解,math,numbers,theory,greatest-common-divisor,Math,Numbers,Theory,Greatest Common Divisor,理解该算法如何找到GCD的直观方法是什么 维基百科有一篇关于它的好文章,名字是。特别是,本文中的这幅图像可能会回答您的字面问题:理解此算法如何找到GCD的直观方法: 基于减法动画的欧几里德算法。初始矩形的尺寸为a=1071和b=462。尺寸为462×462的正方形放置在其中,留下一个462×147的矩形。该矩形用147×147个正方形平铺,直到留下一个21×147的矩形,然后用21×21个正方形平铺,不留下未覆盖的区域。最小的正方形尺寸21是1071和462的GCD 简而言之,如果a和b都可以

理解该算法如何找到GCD的直观方法是什么


维基百科有一篇关于它的好文章,名字是。特别是,本文中的这幅图像可能会回答您的字面问题:理解此算法如何找到GCD的直观方法:

基于减法动画的欧几里德算法。初始矩形的尺寸为a=1071和b=462。尺寸为462×462的正方形放置在其中,留下一个462×147的矩形。该矩形用147×147个正方形平铺,直到留下一个21×147的矩形,然后用21×21个正方形平铺,不留下未覆盖的区域。最小的正方形尺寸21是1071和462的GCD


简而言之,如果
a
b
都可以被a
D
除数,那么它必须是
a-b
的除数,并且不能大于
a-b
。逻辑是递归地应用这一点,并添加规则,即对于
a=b
,GCD是
a

GCD(a, b) = a == b ? a : GCD(min(a, b), abs(a-b))

最大公约数算法的最初发明者是欧几里得,他在《元素》一书中描述了这一算法,大约在基督诞生前300年。以下是他的几何解释,包括他的图表:

设AB和CD是两个给定的非相对素数。 需要找到AB和CD的最大通用度量。 如果现在CD测量AB,因为它也测量自身,那么CD是CD和AB的共同测量值。很明显,它也是最大的,因为不超过CD测量CD的数量。 但是,如果CD不测量AB,那么,当AB和CD中的较小值不断地从较大值中减去时,就会留下一个数字来测量它前面的那个数字。 因为一个单位不存在,否则AB和CD将是相对素数,这与假设相反。 因此,留下了一些数字来衡量前面的数字。 现在让CD,测量BE,让EA小于自身,让EA,测量DF,让FC小于自身,让CF测量AE。 此后,CF测量AE,AE测量DF,因此CF也测量DF。但它衡量自身,因此它也衡量整个裁谈会。 但CD措施是,因此CF措施也是。它也测量EA,因此它测量整个BA。 但它也测量CD,因此CF测量AB和CD。因此,CF是AB和CD的常用测量值。 我接下来说,它也是最伟大的。 如果CF不是AB和CD的最常用度量,那么一些大于CF的数字G度量AB和CD。 既然G度量CD,CD度量BE,那么G也度量BE。但它也测量整个BA,因此它测量剩余的AE。 但是AE测量DF,因此G也测量DF。它测量整个DC,因此它也测量余数CF,也就是说,测量值越大,测量值越小,这是不可能的。 因此,任何大于CF的数值都不能测量AB和CD的数值。因此,CF是AB和CD最常用的测量方法。
观察欧几里德使用“度量”一词表示较小长度的某些倍数与较大长度相同;也就是说,他的概念“度量”与我们的概念“划分”相同,如7分28分。

一个友好的提醒:发布代码而不是代码的图像我们如何知道你做了什么或没有发现什么直观的?你觉得归纳法直观吗?