JS 用6N±1法求素数 实例教程


Posted in Javascript onOctober 20, 2009

用6N±1法求素数
任何一个自然数,总可以表示成为如下的形式之一:
6N,6N+1,6N+2,6N+3,6N+4,6N+5 (N=0,1,2,…)
显然,当N≥1时,6N,6N+2,6N+3,6N+4都不是素数,只有形如6N+1和6N+5的自然数有可能是素数。所以,除了2和3之外,所有的素数都可以表示成6N±1的形式(N为自然数)。
根据上述分析,我们可以构造另一面筛子,只对形如6 N±1的自然数进行筛选,这样就可以大大减少筛选的次数,从而进一步提高程序的运行效率和速度。
以下代码需要自然数大于10

function fn(num){ 
var arr = []; 
arr.push(2); 
arr.push(3); 
arr.push(5); 
arr.push(7); 
var t = 0; 
for (var i = 3; t < num; i = i + 3) { 
for (var j = 0; j < 2; j++) { 
t = 2 * (i + j) - 1; 
if (t < num && (t % 5 == 0 ? false : t % 7 == 0 ? false : true)) { 
arr.push(t); 
} 
} 
} 
return arr.join(” “); 
} 
document.write(fn(1000));

各位大侠有没有更高效的方法或以上代码有不对的地方,请指出。
Javascript 相关文章推荐
ExtJS 2.0 实用简明教程之布局概述
Apr 29 Javascript
javascript 鼠标悬浮图片显示原图 移出鼠标后原图消失(多图)
Dec 28 Javascript
实现动画效果核心方式的js代码
Sep 27 Javascript
jquery的ajax跨域请求原理和示例
May 08 Javascript
innerHTML在IE中报错解决方案
Dec 15 Javascript
jQuery蓝色风格滑动导航栏代码分享
Aug 19 Javascript
JavaScript实现水平进度条拖拽效果
Jan 18 Javascript
canvas实现刮刮卡效果
Mar 14 Javascript
基于jQuery对象和DOM对象和字符串之间的转化实例
Aug 08 jQuery
jQuery Ajax 实现分页 kkpager插件实例代码
Aug 10 jQuery
对Vue2 自定义全局指令Vue.directive和指令的生命周期介绍
Aug 30 Javascript
输入框跟随文字内容适配宽实现示例
Aug 14 Javascript
获取网站跟路径的javascript代码(站点及虚拟目录)
Oct 20 #Javascript
Javascript var变量隐式声明方法
Oct 19 #Javascript
让你的网站可编辑的实现js代码
Oct 19 #Javascript
document.onreadystatechange事件的用法分析
Oct 17 #Javascript
将jQuery应用于login页面的问题及解决
Oct 17 #Javascript
层序遍历在ExtJs的TreePanel中的应用
Oct 16 #Javascript
JavaScript 基于原型的对象(创建、调用)
Oct 16 #Javascript
You might like
PHP设计模式之调解者模式的深入解析
2013/06/13 PHP
php 计算两个时间相差的天数、小时数、分钟数、秒数详解及实例代码
2016/11/09 PHP
php成功操作redis cluster集群的实例教程
2019/01/13 PHP
javascript 控制弹出窗口
2007/04/10 Javascript
用JavaScript 处理 URL 的两个函数代码
2007/08/13 Javascript
js 页面输出值
2008/11/30 Javascript
HTML 自动伸缩的表格Table js实现
2009/04/01 Javascript
javascript动画之圆形运动,环绕鼠标运动作小球
2010/07/20 Javascript
浅析Js(Jquery)中,字符串与JSON格式互相转换的示例(直接运行实例)
2013/07/09 Javascript
JS常用函数使用指南
2014/11/23 Javascript
解决js函数闭包内存泄露问题的办法
2016/01/25 Javascript
使用jQuery制作基础的Web图片轮播效果
2016/04/22 Javascript
jQuery+ThinkPHP+Ajax实现即时消息提醒功能实例代码
2017/03/21 jQuery
使用jQuery卸载全部事件的思路详解
2017/04/03 jQuery
Vue异步组件使用详解
2017/04/08 Javascript
基于jQuery解决ios10以上版本缩放问题
2017/11/03 jQuery
微信小程序实现滚动消息通知
2018/02/02 Javascript
IE8中jQuery.load()加载页面不显示的原因
2018/11/15 jQuery
vue-router两种模式区别及使用注意事项详解
2019/08/01 Javascript
[02:30]DOTA2英雄基础教程 暗影恶魔
2013/12/17 DOTA
Python 搭建Web站点之Web服务器与Web框架
2016/11/06 Python
Python实现的下载网页源码功能示例
2017/06/13 Python
不知道这5种下划线的含义,你就不算真的会Python!
2018/10/09 Python
Django之模型层多表操作的实现
2019/01/08 Python
使用Python实现图像标记点的坐标输出功能
2019/08/14 Python
python实现梯度下降算法的实例详解
2020/08/17 Python
最好的商品表达自己:Cafepress
2019/09/04 全球购物
抽象类和接口的区别
2012/09/19 面试题
描述JSP和Servlet的区别、共同点、各自应用的范围
2012/10/02 面试题
建筑工程技术应届生自荐信
2013/09/27 职场文书
餐饮业会计岗位职责
2013/12/19 职场文书
小班下学期个人总结
2015/02/12 职场文书
如何判断微信付款码和支付宝付款码
2021/04/01 PHP
python Django框架快速入门教程(后台管理)
2021/07/21 Python
css中z-index: 0和z-index: auto的区别
2021/08/23 HTML / CSS
「海贼王」112.9万粉丝纪念图标公布
2022/03/21 日漫