⑴ 歐幾里得演算法是什麼
歐幾里得演算法又稱輾轉相除法,是指用於計算兩個非負整數a,b的最大公約數。應用領域有數學和計算機兩個方面。計算公式gcd(a,b) = gcd(b,a mod b)。
輾轉相除法的演算法步驟為,兩個數中用較大數除以較小數,再用出現的余數除除數。
再用出現的余數(第二餘數)去除第一餘數,如此反復,直到最後余數是0為止。
輾轉相除法是利用以下性質來確定兩個正整數a和b的最大公因子的:
1、若r是a ÷ b的余數,且r不為0,則gcd(a,b) = gcd(b,r)。
⒉、a和其倍數之最大公因子為a。
另一種寫法是:
⒈、令r為a/b所得余數(0≤r),若r= 0,演算法結束;b即為答案。
⒉、互換:置a←b,b←r,並返回第一步。
⑵ 什麼是歐幾里得演算法,它有什麼意義
歐幾里得演算法即輾轉相除法,用以求兩個數的最大公約數(或者最小公倍數)
證明如下
假設x,y的最大公約數為d
且設x=k1*d,y=k2*d;
則有z=x-y=(k1-k2)*d;
也必定能被d整除,所以通過兩個數不斷輾轉,直到其中一個變為0為止,以此最終快速得出兩個數的最大公約數。
在演算法的應用上是用求余以加速運算的速度。
總的來說,歐幾里得演算法的意義就是快速求得兩個數的最大公約數。