歐幾里德算法
歐幾里德算法又稱輾轉(zhuǎn)相除法,用于計(jì)算兩個(gè)整數(shù)a,b的最大公約數(shù).其計(jì)算原理依賴于下面的定理:
定理:gcd(a,b) = gcd(b,a mod b)
證明:a可以表示成a = kb + r,則r = a mod b
假設(shè)d是a,b的一個(gè)公約數(shù),則有
d|a,d|b,而r = a - kb,因此d|r
因此d是(b,a mod b)的公約數(shù)
假設(shè)d 是(b,a mod b)的公約數(shù),則
d | b ,d |r ,但是a = kb +r
因此d也是(a,b)的公約數(shù)
因此(a,b)和(b,a mod b)的公約數(shù)是一樣的,其最大公約數(shù)也必然相等,得證.
歐幾里德算法就是根據(jù)這個(gè)原理來做的,其算法用C++語言描述為:
void swap(int & a,int & b)
{
int c = a;
a = b;
b = c;
}
int gcd(int a,int b)
{
if(0 == a )
{
return b;
}
if( 0 == b)
{
return a;
}
if(a > b)
{
swap(a,b);
}
int c;
for(c = a % b ; c > 0 ; c = a % b)
{
a = b;
b = c;
}
return b;
}
參考資料:internet
歐幾里德算法是什么啊?
歐幾里德算法是什么啊?
其他人氣:979 ℃時(shí)間:2020-05-22 23:47:06
優(yōu)質(zhì)解答
我來回答
類似推薦
- 關(guān)于擴(kuò)展歐幾里德算法
- 問個(gè)歐幾里德擴(kuò)展算法的理解問題
- 歐幾里德算法的簡單解釋
- 歐幾里德算法怎么使用
- 勾股定理 歐幾里德證法 急
- 比值是七分之一的比有幾個(gè)?是怎么解的?最好有算式!急
- 只要是“to+動詞原形”就是動詞不定式嗎?
- 如夢令 李清照 思想、主題、意境
- 馬說一文里對“食馬者”的無知發(fā)出強(qiáng)烈譴責(zé)的語句是什么?
- 一塊紅綢,長2.4米,寬70厘米.要做直角邊分別為8厘米,5厘米的三角形小旗,可以做幾面?
- 已知∠AOB與∠BOC互為補(bǔ)角,OD是∠AOB的平分線,OE在∠BOC內(nèi),∠BOE=1/2∠EOC,∠DOE=72°,求∠EOC的度數(shù).
- 九牛一毛、滄海一粟這二個(gè)詞表現(xiàn)了什么?
猜你喜歡
- 1怎樣判斷一個(gè)有機(jī)物分子式平面結(jié)構(gòu)還是立體結(jié)構(gòu)
- 2求一套九年級一元二次方程整章的數(shù)學(xué)卷
- 3in the summer of 1980 a spanish tourist ,Gasper Carner,went to Great Britai
- 4除了攝氏溫度計(jì),還有什么溫度計(jì)呢?
- 5為什么要保護(hù)野生動物和野生植物?
- 6水稻畝產(chǎn)量的世界紀(jì)錄是多少
- 7請你算一算: 松鼠媽媽采松子,晴天每天可采20個(gè),雨天每天可采12個(gè),它一連幾天采了112個(gè)松子,平均每天采14個(gè),問這幾天中有幾天晴天,幾天是雨天?
- 8若m2+n2-6n+4m+13=0,m2-n2=_.
- 9商店運(yùn)來蘋果500千克,蘋果比梨子少4分之1,梨子有多少千克?
- 10質(zhì)量為M1的木板靜止在光滑的水平面上,在木板上放一質(zhì)量為M2的木塊.現(xiàn)給木塊一個(gè)相對于地面的水平速度V0,已知木塊與木板間的動摩擦因數(shù)為u,木板足夠長
- 11一次函數(shù) y=-2x+3 是否在(4,-10)上
- 12兩情若是久長時(shí) 又豈在朝朝暮暮