黑马程序员————java实现:筛选法求素数
2015-09-26 11:20
537 查看
------www.itheima.com Java培训、Android培训、iOS培训、.Net培训期待与您交流!
-------
不了解筛选法,还请自行百度,筛选法可以快速求的素数,不多说,直接上代码伺候!
-------
不了解筛选法,还请自行百度,筛选法可以快速求的素数,不多说,直接上代码伺候!
/** * 功能:筛选法求素数(主要是素数倍数的数,肯定不是素数) * @author Smilexs * @param severalPrime 第几个素数 */ public void getPrime(int severalPrime){ if(severalPrime<=0||severalPrime==1){ System.out.println("第1个素数是:2"); return; } int [] a =new int[severalPrime];//存放素数 的 数组 int index=0;//数组下标 a[index]=2;//第一个素数=2 for(int n=3;;n++){ boolean flag=true;//标记是否是 素数,每次循环假定是 素数 /* * 关键: * 数组中遍历,n是否是数组里面某个数的倍数 * Math.sqrt(index) 大大大的提高了 运算速度 */ for(int j=0;j<=Math.sqrt(index);j++){ if(n%a[j]==0){ flag=false;//不是素数,直接下一轮 break; } } if(flag){ index++; a[index]=n;//是素数 存放数组里 } if(index==severalPrime-1)break; } System.out.println("第"+severalPrime+"个素数是:"+a[severalPrime-1]); }结果:
相关文章推荐
- java对世界各个时区(TimeZone)的通用转换处理方法(转载)
- java-注解annotation
- java-模拟tomcat服务器
- java-用HttpURLConnection发送Http请求.
- java-WEB中的监听器Lisener
- Android IPC进程间通讯机制
- Android Native 绘图方法
- Android java 与 javascript互访(相互调用)的方法例子
- 介绍一款信息管理系统的开源框架---jeecg
- 聚类算法之kmeans算法java版本
- java实现 PageRank算法
- PropertyChangeListener简单理解
- 插入排序
- 冒泡排序
- 堆排序
- 快速排序
- 二叉查找树
- [原创]java局域网聊天系统