黑马程序员技术交流社区

标题: 如何快速计算出2个素数中间有多少个素数 [打印本页]

作者: zztierlie    时间: 2016-8-12 17:49
标题: 如何快速计算出2个素数中间有多少个素数
求算法高手来解答一下
作者: 汐城西下    时间: 2016-8-12 23:40
素数我都忘了  你还让我求
作者: 开心的流泪者    时间: 2016-8-13 10:42
快速 计算,我知道最笨的方法,就是(m,n)中间的数一个一个for(int i=m,i<=n;i++) 的找。判断哪一个 是素数,进行计数。主要代码如下:(注意下面有中文字符)
int num=0;
int i,j;
for( i=m;i<=n;i++)
     for(j=2;j<sqrt(i);j++)
           if (i%j==0)  break;
          if(j>=sqrt(i) )   num++;
System.out.println(num);
快速的计算出 肯定有简便的算法。楼主可供参考。

作者: ancheng    时间: 2016-8-13 21:03
开心的流泪者 发表于 2016-8-13 10:42
快速 计算,我知道最笨的方法,就是(m,n)中间的数一个一个for(int i=m,i

这个题可以用筛选法,速度会更快
作者: double_x    时间: 2016-8-13 21:56
今天 光求素数这道题都块难死我
作者: 开心的流泪者    时间: 2016-8-14 12:17
ancheng 发表于 2016-8-13 21:03
这个题可以用筛选法,速度会更快

嗯 算法真是博大精深呀  加油




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2