public static List<Integer> ListPrime(int n) {
/*
* false为质数,true为合数
*/
boolean[] primeList = new boolean[n + 1];
for (int i = 2; i <= n; i++) {
if (!primeList[i]) {
int j = i * i;
if (j > n) // 所有合数都已被标记
break;
if (i > 2) {
/*
* 将所有能被此质数整除的奇数标记为合数
*/
while (j <= n) {
primeList[j] = true;
j = j + i + i;
}
} else {
/*
* 将所有大于2的偶数标记为合数
*/
while (j <= n) {
primeList[j] = true;
j = j + i;
}
}
}
}
List<Integer> listPrime = new LinkedList<Integer>();
if( n > 1 )
listPrime.add(2);
for (int i = 3; i <= n; i += 2) {
if (!primeList[i]) {
listPrime.add(i);
}
}
System.out.println(listPrime.size());
return listPrime;
}
分享到:
相关推荐
java求素数的经典算法java求素数的经典算法java求素数的经典算法java求素数的经典算法
用Java语言写出素数,控制台小程序。一看即懂。
java,很简单的算法求素数
java的10000以内的数的素数的求法,算法简单易懂
主要介绍了Java求质数的几种常用算法,结合实例形式分析了三种比较常见的求质数算法原理及相关实现技巧,需要的朋友可以参考下
判断一个数是否为质数的静态函数 自己所写的最优算法
素数的测试算法课程设计,讲述了素数算法的代码,还有一些想法
Java 算法面试题 判断质数
Java求100之内的素数,素数是只能被1和自身整除的数,运用for循环和if条件语句,即可轻松解决这个数学问题,求素数也是初学Java时频率较高的测试题,新手看看哦。
探讨不同的素数求法!从简单的素数解法入手,逐渐深入,并结合计算机的特点得到一个较为合适的素数解法!适合参加ACM竞赛的同学学习!
求1到100的素数,不过这个算法可能不是很好,另外,还要有,5个换行输出
java求解素数环经典问题,很好的算法设计,看看就知道了
埃拉托斯特尼筛子和另外一种求素数的JAVA写的算法,经过实际的测试,在不同的数据区内,用不同的算法的响应时间是不同的 ,最后我综合了临界区域的实际计算,写了一个比较可靠的方法。
[Java算法练习]-求100以内的素数.java
可以随机生成素数,并生成公钥私钥,对明文进行加密。
全排序、二分查找、冒泡排序、阶乘、最大公约数、最小公倍数、打印九九乘法表、判断素数、快速排序的递归实现和非递归实现、随机数、字符串操作、50人围成一圈,数到3和3的倍数的人出局,最后剩下的人是谁。...
跟我学Java面向对象程序设计技术及应用——识别某个自然数是否为质数(素数)的Java 程序实现示例 1 什么是质数(素数) 1 什么是质数(素数) 对于什么是质数(Prime Number),读者可以查询百科。在百科中的定义...
兔子繁殖 半段质数 水仙花数 最大公约数 最小公倍数 数字排序等经典的编程问题
Eratosthenes筛选求质数 超长整数运算(大数运算) 长 PI 最大公因数、最小公倍数、因式分解 完美数 阿姆斯壮数 最大访客数 中序式转后序式(前序式) 后序式的运算 关于赌博 洗扑克牌(乱数...
本文实例讲述了javascript实现计算指定...算法来源:《Java求质数的几种常用算法》 javascript计算指定范围内的质数源代码: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.or