跳到内容
← 全部问题

如何从最大公约数递推公式推导出基于减法的算法?

基于减法的算法是通过在一般递推公式中令参数 k 为 1 推导出来的。将 k=1k=1 代入 gcd(a,b)=gcd(b,a−k⋅ba-k\cdot b) 得到 gcd(a,b)=gcd(b,a-b),这将第一个参数替换为两个数的差。

适用条件

  • 一般递推公式成立。
  • k 被设为 1。

理解与推导

  1. 从一般公式 gcd(a,b)=gcd(b,a−k⋅ba-k\cdot b) 开始。
  2. 将 k=1k=1 代入方程。
  3. 将项 a−k⋅ba-k\cdot b 简化为 a-b。
  4. 得到基于减法的算法:gcd(a,b)=gcd(b,a-b)。

例子

视频指出:“令 k=1k=1,得到减法法:gcd(a,b)=gcd(b,a-b)。”

容易误解的地方

  • 认为减法法要求 a>ba > b;该公式对任意整数都成立,尽管实际实现中可能会交换它们。
  • 混淆减法法与欧几里得算法;它们是同一一般公式的不同特例。

观看对应讲解

相关概念

继续追问

相关问题

认识概念

↗
认识概念

↗
掌握方法

↗
掌握方法

↗

答案依据视频资料生成并经过独立核验。若有疑问,请核对原视频或联系原作者。