1、素数是什么:
只有1和他本身两个因数的数叫做素数,如2、3、5、7、11等等
2、常见算法思想
(1)变量i从2到n依次判断i是否是素数,如果i是素数,则素数个数+1;
(2)除2、3外,所有素数都是6N±1的形式;
(3)变量j从2开始循环到sqrt(i),如果i%j==0,则i不是素数,否则最后i是素数;
3、我的算法思想
(1)所有合数都可以分解成多个素数的乘积,如8=2*2*2;
(2)除2、3外,所有素数都是6N±1的形式;
(3)可以先把已知的素数保存,用j对已知的素数求余,这样循环次数会大量减少;
4、常见算法的代码实现(函数)
public long normalPrime(int n) {
long startTime=System.currentTimeMillis();//记录开始时间
if (n<2)
return 0;
int i,j;
boolean isPrime=true;
normalPrimeList.clear();
normalPrimeList.add(2