折騰分家。算法介紹:將兩個數A和B相除,若余數C不等於0,則將B的值給A,C的值給B,直到C等於0。此時最大公約數為b。
更多的相位減法。算法介紹:用較小的數B減去較大的數A,如果差值C等於0,那麽最大公約數就是B,如果不等於0,把B的值給A,把C的值給B,繼續減法,直到差值等於0。
窮舉法算法介紹:將A和B兩個數中較小的值賦給I,A除以I,B除以I,如果兩個數的余數同時為0,I就是它們的最大公約數。如果不等於0,i-1,繼續將A除以I,B除以I,直到余數同時為0。
最大公約數:
最大公因數,又稱最大公因數、最大公因數,是指兩個或兩個以上整數的除數中最大的壹個。a和b的最大公約數是(a,b)。同樣,a,b,c的最大公約數是(a,b,c),多個整數的最大公約數有相同的記號。
早在公元前300年左右,歐幾裏得就在他的著作《幾何原本》中給出了壹個高效的解決方案——相除法。除法所用的原理非常巧妙和簡單。假設用f(x,y)表示x和y的最大公約數,k=x/y,b?=x%y,那麽x=ky+?b,如果壹個數能同時除x和y,那它壹定同時除b和y。
而能同時被B和Y整除的數也會同時被X和Y整除,即X和Y的公約數與B和Y的公約數相同,其最大公約數相同,則f(x,y)=f(y,X % Y)(Y >;0),這樣原問題就可以轉化為求兩個較小分數的最大公約數,直到其中壹個為0,剩下的數就是兩者的最大公約數。