经典算法集锦

经典算法集锦

2、最大公约数:最大公因子

辗转相除法:辗转相除法基于如下原理:两个整数的最大公约数等于其中较小的数和两数的相除余数的最大公约数。

计算两个非负整数p和q的最大公约数:若q是0,则最大公约数为p。否则,将p除以q得到余数r,p和q的最大公约数即为q和r的最大公约数。

Public static int gcd(int p, int q)
{
    if(q==0) return p;
    int r = p % q;
    return gcd(q,r);
}

1、素数:质数

除了1和它本身以外不再有其他的因数。

public static boolean isPrime(int N){
    if(N<2) return false;
    for(int i =2; i*i <=N; i ++)
        if(N%i ==0) return false;
    return true;
}
posted @ 2016-04-15 15:21  suntingme  阅读(214)  评论(0编辑  收藏  举报