欢迎访问宙启技术站
智能推送

Java中实现求最大公约数的函数

发布时间:2023-07-05 23:30:31

Java 中求最大公约数的方法有多种,可以使用辗转相除法、更相减损法、辗转相减法等等。下面将介绍其中几种常见的方法。

方法一:辗转相除法

辗转相除法,也叫欧几里德算法,是求两个数的最大公约数的常用方法。

public static int gcd(int a, int b) {
    if (b == 0) {
        return a;
    }
    return gcd(b, a % b);
}

方法二:更相减损术

更相减损术是另一种求最大公约数的方法。

public static int gcd(int a, int b) {
    if (a == b) {
        return a;
    }
    if (a < b) {
        return gcd(b - a, a);
    }
    return gcd(a - b, b);
}

方法三:辗转相减法

辗转相减法也是一种求最大公约数的方法。

public static int gcd(int a, int b) {
    if (a == b) {
        return a;
    }
    if (a < b) {
        return gcd(b - a, a);
    }
    return gcd(a - b, b);
}

使用示例:

public static void main(String[] args) {
    int a = 36;
    int b = 24;
    int result = gcd(a, b);
    System.out.println("最大公约数: " + result);
}

输出结果:

最大公约数: 12

以上就是在 Java 中实现求最大公约数的函数的几种常见方法。根据具体情况可选用不同的方法。