欧几里得算法的思想与证明

算法:

  • r=m%n,现在有0 ≤ r < n
  • 如果r等于0,最大公约数就是n.
  • 让m=n,n=r,返回步骤1.
begin 
while n!= 0 do 
begin
m:=n
r:=m mod n
n:=r
return n;

原理

能整除正整数m,n的任何数一定能整除m-qn=r(证明如下),因此整除n和r的任何数必定整除qn+r=m;所以{m,n}的公因子集合和{n,r}的公因子集合是一样的.特别地,{m,n}的最大公因子和{n,r}的最大公因子是一样的.

证明:能整除正整数m,n()的任何数一定能整除m-qn=r.
设:k能整除m,n;
则存在正整数x,y使得:kx=m,ky=n成立;
r=m-qn等价于r=kx-qky;
有r/k=x-qy;
证明完毕.

算法的特点

  • 确定性
  • 多样性
  • 有穷性
  • 有输入和输出

算法设计的分析步骤

欧几里得算法的思想与证明_第1张图片
imge

你可能感兴趣的:(欧几里得算法的思想与证明)