1. 程式人生 > >歐幾里得演算法&&擴充套件歐幾里得演算法

歐幾里得演算法&&擴充套件歐幾里得演算法

  • 正確性證明:
    設此時函式為ecgcd(a,b,x,y)
    則下一次遞迴的函式為exgcd(b,a%b,x,y)
    假設我們已經得到一組x和y(終止時得到),那麼返回上一個函式時,x,y應該怎樣變化?
    將得到的x和y帶入方程,有 b*x+a%b*y=gcd
    又因為 a%b=a-a/b*b
    所以得到 b*x+(a-a/b*b)*y=gcd
    進一步化簡 a*y+b*(x-a/b*y)=gcd
    又因為 a*x+b*y=gcd
    所以可以得到兩個函式之間x,y的關係
    原式得證