最快素数

package example.service.repay;

public class PrimeTest {

    public int isPrime(int n) { // 返回1表示判断为质数,0为非质数,在此没有进行输入异常检测
        double n_sqrt;
        if (n == 2 || n == 3)
            return 1;
        if (n % 6 != 1 && n % 6 != 5)
            return 0;
        n_sqrt = Math.floor(Math.sqrt(n));
        for (int i = 5; i <= n_sqrt; i += 6) {
            if (n % (i) == 0 | n % (i + 2) == 0)
                return 0;
        }
        return 1;
    }

    public static void main(String[] args) {
        int flag = new PrimeTest().isPrime(1001);
        System.err.println(flag);
    }

}

 

posted on 2018-10-29 18:03  jis117  阅读(170)  评论(0编辑  收藏  举报

导航