你的位置:首页 > 软件开发 > Java > [LeetCode] Count Primes

[LeetCode] Count Primes

发布时间:2015-08-20 17:00:07
这道题我觉得难点就是在到底咋用java判断一个数是不是质数这个点上。 说实话这个我实在没啥点,我这个办法也是直接死背下来的,所以我也不会说原理。 关于isPrime()method里面那个for loop为啥step是2是因为我的loopc ...

 

     这道题我觉得难点就是在到底咋用java判断一个数是不是质数这个点上。

     说实话这个我实在没啥点,我这个办法也是直接死背下来的,所以我也不会说原理。

     关于isPrime()method里面那个for loop为啥step是2是因为我的loopcong3开始,3,5,7,9……这样是略过了所有偶数,所有偶数除了2,都不可能是prime的。(偶数判断也已经单独写了if statament。)所以简化过程,直接在奇数里面判断。

     代码如下。~

public class Solution {  public int countPrimes(int n) {    if(n<=2){      return 0;    }    int count=1; //at least 2 is a prime    for (int i=3;i<n;i++){      if(isPrime(i)==true){        count++;      }    }    return count;  }    public boolean isPrime(int n){    if(n%2==0){      return false;    }    for(int i=3;i*i<=n;i=i+2){      if(n%i==0){        return false;      }    }    return true;  }}

原标题:[LeetCode] Count Primes

关键词:

*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们: admin#shaoqun.com (#换成@)。

可能感兴趣文章

我的浏览记录