O que método "hybridGCD" fazer em Java BigInteger Classe?

User_67128:

Eu estava olhando para Java BigInteger método gcd código fonte. I encontrado método hybridGCD () que não foi definido em qualquer lugar na classe.

aqui está o link: http://hg.openjdk.java.net/jdk/jdk11/file/tip/src/java.base/share/classes/java/math/BigInteger.java

public BigInteger gcd(BigInteger val) {
    if (val.signum == 0)
        return this.abs();
    else if (this.signum == 0)
        return val.abs();

    MutableBigInteger a = new MutableBigInteger(this);
    MutableBigInteger b = new MutableBigInteger(val);

    MutableBigInteger result = a.hybridGCD(b);

    return result.toBigInteger(1);
}

O método gcd não estava a responder por uma hora durante dois números bastante grandes (contendo milhões de dígitos cada).

Scott Hunter:

Acho que você gosta

Origin http://43.154.161.224:23101/article/api/json?id=236720&siteId=1
Recomendado
Clasificación