1. 程式人生 > >求最大公約數——歐幾里得演算法(JAVA)

求最大公約數——歐幾里得演算法(JAVA)

歐幾里得演算法

問題描述:給出兩個數m,n,求解這兩個數的最大公因數

由於演算法比較簡單,這裡不再贅述,我做的這個演算法是默認了m>n,如果是對於任意兩個數來說的話,我們這裡還需要一個比較大小。

public class Gcd {
    public static void main(String[] args) {
        long m = 100;
        long n = 20;
        System.out.println(gcd(m,n));
    }
    /**
     * 預設m>n
     * max = m>n?m:n
     * min = m<n?m:n
     */
    public static long gcd(long m,long n){
        while (n != 0){
            long rem = m % n;

            m = n;

            n = rem;
        }
        return m;
    }
}