扩展欧几里得算法

来源:互联网 发布:高中网上听课软件 编辑:程序博客网 时间:2024/05/19 05:38

扩展欧几里得算法,形式上为a*x+b*y=gcd(a,b);
算法通过递归调用实现,可以求出a,b的最大公因数的同时,也可以求出使这个方程成立的通解: 

x=x0+(b/gcd)*t;y=y0- (a/gcd)*t;

递归部分为

x = y1y = x1 – a/b*y1

其中最大公约数通过返回值求出,通解通过将x前系数化为1,y前系数化为0实现;

0 0