文档章节

求质数的BitSet算法

小小明童鞋
 小小明童鞋
发布于 2016/12/12 14:27
字数 120
阅读 28
收藏 0
import java.util.*;

public class BitSetTest {

	public static void main(String[] args) {

		long begin = System.currentTimeMillis();

		BitSet sieve = new BitSet(54115297);

		int size = sieve.size();

		for (int i = 2; i < size; i++)

			sieve.set(i);

		int finalBit = (int) Math.sqrt(sieve.size());

		//这个for if 写的太风骚
		for (int i = 2; i < finalBit; i++)

			if (sieve.get(i))

				for (int j = 2 * i; j < size; j += i)

					sieve.clear(j);

		int counter = 0;

		for (int i = 1; i < size; i++) {

			if (sieve.get(i)) {
				++counter;
			}
			//求 54115291是第几个质数
			if (sieve.get(i) && i == 54115291) {

				System.out.printf("%5d", i);
				System.out.println();
				long end = System.currentTimeMillis();

				System.out.println("求第" + counter + "个质数耗时:" + (end - begin)
						+ "毫秒");
			}

		}

	}

}

 

© 著作权归作者所有

共有 人打赏支持
上一篇: 程序猿领养群
下一篇: 单例模式
小小明童鞋
粉丝 29
博文 84
码字总数 74698
作品 0
南京
程序员
私信 提问
Bloom Filter 大规模数据处理利器

最近工作中涉及到bloom Filter,真是一把科研利器呀,大数据、网络、云等等都可以用到! Bloom Filter是由Bloom在1970年提出的一种多哈希函数映射的快速查找算法。通常应用在一些需要快速判断...

SibylY
2013/07/25
0
0
刷题常用模板 by flytosky2015

声明模板: 搜索 BFS 图论 LCA最近公共祖先+计算树中两点最短距离 最短路 优先队列优化的Dijkstra O(E*log(E)) 最小生成树 拓扑排序 对一个DAG进行拓扑排序有两种方法,广度优先搜索和深度优...

chudongfang2015
2017/02/10
0
0
求质数的各种算法

首先声明本人水平有限,仅仅做一下记录,有错的地方请指正,文章垃圾请包容!! 在网上不小心浏览到一篇技术博客,叫做《求质数算法的N种境界(N>10)》,写得很好,有兴趣的读者自己去搜索。...

勤奋的人生
2017/04/23
0
0
Java.util包下BitSet的用法

BitSet:是一个字节集合,用它可以表示整数和进行求两个集合的交集、并集等运算。 我们知道,计算机存储的最小单位是比特bit,而我们在java程序中的最小单位是字节Byte,他们之间的换算关系是...

吴小河
2016/07/12
380
2
RSA的安全性---学习笔记(不包含数学关系的推导)

最近了解了RSA算法的安全性的基本原理,简单记录一下方便以后回顾(不包含数学公式的推导以及产生大质数和求模反元素的具体算法)。 RSA加密解密的数学公式: c=m^e%n m=c^d%n 需要的数学条件:...

duanbowen
2017/05/17
0
0

没有更多内容

加载失败,请刷新页面

加载更多

安卓的切图规范

Android UI 切图命名规范、标注规范及单位描述 很多UI设计师做APP切图都会有两套,一套是Android的,一套是IOS的。IOS我这边暂不作讲解,因为我本人也不是开发IOS。这里整理一下我在Android...

mo311
29分钟前
2
0
深度剖析阿里巴巴对Flink的优化与改进

摘要: 作者 | 阿里巴巴实时计算团队 导读:随着人工智能时代的降临,数据量的爆发,阿里巴巴的商品数据处理就经常需要面对增量和全量两套不同的业务流程问题,所以阿里巴巴就在想:能不能有...

阿里云官方博客
30分钟前
2
0
Dubbo基础介绍

Dubbo是一个常用的分布式服务框架, 它致力于提供高性能、透明化的RPC远程服务方案。 学习Dubbo有助于提高企业级应用的开发效率,以及可通过简单的配置就可以实现负载均衡,提高服务的效率。...

Java搬砖工程师
41分钟前
4
0
VBS 自动登陆

1.关于网页元素属性 IE浏览器打开网页时,有很多元素,比如说一个文本框,一个按键等。每个元素都会有对应的“name”、“ID”,“style”,“class”等属性。 其中的“ID”和“name”属性是我...

宝贝女儿
46分钟前
1
0
GO 文件相关操作

package mainimport("fmt""os""bufio""io""io/ioutil")type ChartCount struct{Chct intSpacect intNumberct intOtherct int}func main() {file,err := os.Open......

汤汤圆圆
47分钟前
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部