greatest common divisor (gcd) - Java java.lang

Java examples for java.lang:Math Algorithm

Description

greatest common divisor (gcd)

Demo Code


import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import static java.lang.Math.sqrt;
import static practice.project.euler.util.PrimeUtil.getNextPrime;
import static practice.project.euler.util.PrimeUtil.isPrime;

public class Main{
    public static void main(String[] argv) throws Exception{
        long a = 2;
        long b = 2;
        System.out.println(gcd(a,b));
    }/*from  ww  w  .  ja va2s .  co  m*/
    public static long gcd(long a, long b) {

        //        if (a<b)
        //            return gcd(b,a);
        //
        //        if (a%b == 0)
        //            return b;
        //
        //        return gcd(a%b,b);

        //        while (b!=0) {
        //            a%=b;
        //            if (a==0)
        //                return b;
        //            b%=a;
        //        }
        //        return a;
        //slightly faster.
        long tmp;
        while (a > 0) {
            tmp = b % a;
            b = a;
            a = tmp;
        }
        return b;
    }
}

Related Tutorials