欧几里得及扩展欧几里得算法
Posted pedesis
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了欧几里得及扩展欧几里得算法相关的知识,希望对你有一定的参考价值。
欧几里得算法 这个就是常说的辗转相除法,用于计算两个整数 $a,b$ 的最大公约数,即$$gcd(a,b)=gcd(b,a;mod;b)$$
扩展欧几里德算法 是用来在已知 $a,b$ 求解一组整数解 $x,y$ 使它们满足等式:$$ax+by=gcd(a, b)$$
(解一定存在,根据数论中的相关定理 具体怎么证明我也不清楚)
那么问题来了如何求出一组 $x,y$
证明如下(重点):
设 $a>b$
显然当 $b=0$ , $gcd(a,b)=a$ 时,$x=1$ , $y=0$ ;
以上是关于欧几里得及扩展欧几里得算法的主要内容,如果未能解决你的问题,请参考以下文章
用C语言编制的求模逆元的扩展欧几里德算法,只要能基本上实现这个功能就行