JS基础_质数练习的改进,提高程序执行效率
2024-09-05 09:48:14
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<script type="text/javascript"> //测试如下的程序的性能,在程序执行前,开启计时器,注意用外部浏览器测试,因为HBuilder内置的浏览器打印不出时间 //----------------------------------------------------------------------------------------- //console.time("计时器的名字")可以用来开启一个计时器
//它需要一个字符串作为参数,这个字符串将会作为计时器的标识
console.time("test"); //打印2-100之间所有的数
for(var i=2 ; i<=10000 ; i++){
var flag = true;
for(var j=2 ; j<=Math.sqrt(i) ; j++){
if(i%j == 0){
//如果进入判断则证明i不是质数,修改flag值为false
flag = false;
//一旦进入判断,则证明i不可能是质数了,此时循环再执行已经没有任何意义了
//使用break来结束循环
break; //不加break 215ms
//加break 25ms
//改为j<=Math.sqrt(i) 2.6ms
}
}
//如果是质数,则打印i的值
if(flag){
console.log(i);
}
} //终止计时器
//console.timeEnd()用来停止一个计时器,需要一个计时器的名字作为参数
console.timeEnd("test"); /*
* 36
*
* 1 36
* 2 18
* 3 12
* 4 9
* 6 6
*
*/ //可以通过Math.sqrt()对一个数进行开方
var result = Math.sqrt(97); console.log("result = "+result) </script>
</head>
<body>
</body>
</html>
最新文章
- Jquery 页面间传值(非QuerryString)
- HDU 5651 计算回文串个数问题(有重复的全排列、乘法逆元、费马小定理)
- [Leetcode][JAVA] Populating Next Right Pointers in Each Node II
- CSS3中的counter和content属性,一些简单的内容显示就不需要JS去实现了
- java 常用集合例子
- 开着奥迪做Uber司机是什么心态?
- 七、Android学习笔记_JNI hello world
- WinScp上传和下载
- HDU 4763 (KMP算法)
- script 表单验证
- 在Linux下如何用Shell脚本读写XML?现有一个config.xml(转)
- UVA 11464 - Even Parity(枚举方法)
- 定制XP引导屏幕背景图像和替换windows这句话
- BOM(浏览器对象模型)的一些操作
- Maven可以使用mvn package指令对项目进行打包,如果使用Java -jar xxx.java
- 协程 IO多路复用
- BZOJ4653 [NOI2016] 区间 【线段树】
- 高效能程序员的七个习惯【csdn】
- Python包管理工具pip安装
- Oracle 初始化参数 二三事,随记