zoukankan      html  css  js  c++  java
  • 打印100以内的质数及优化

    `public class Demo3{
    public static void main(String[] arg){

    	//获取当前时间距离1970-01-01 00:00:00的毫秒数
    	long start = System.currentTimeMillis();
    	
    	//标识 i 是否被 j 除尽,一旦除尽,修改其值
    	boolean flag = true;
    	
    	//实现打印100000以内的质数
    	System.out.println("100以内的质数:");
    	for(int i=2;i<=100000;i++){   //遍历100以内的自然数
    		for(int j=2;j<i;j++){
    			//从2开始到(i-1)只要有一个 j 能整除 i,说明这个i不是质数,并修改标识符为false
    			if(i%j == 0){  
    				flag = false;
    				
    			}
    			//优化方式一:遇到第一个j 能整除 i ,就退出循环,不用执行其他的 i%j(只对本身是非质数的自然数起到优化作用)
    			break;
    		}			
    		if(flag == true){
    			//当flage还是为true,说明上面所有的j都没有整除i,那么这个 i 就是质数,打印出来
    			System.out.print(i + "	");
    		}	
    		// 重置 flag 为true
    		flag = true;
    	}
    	//获取当前时间距离1970-01-01 00:00:00的毫秒数
    	long end = System.currentTimeMillis();
    	
    	//程序总耗时
    	System.out.println("程序总耗时:"+(end-start) + "ms");
    	//90232 优化一:9539  
    }
    

    } `

  • 相关阅读:
    笔试算法题(51):简介
    笔试算法题(50):简介
    笔试算法题(49):简介
    笔试算法题(48):简介
    笔试算法题(47):简介
    笔试算法题(46):简介
    SQL Server 笔记
    SQL Server 2008 安装重启电脑失败
    列举某个目录文件
    Linux LAMP 配置
  • 原文地址:https://www.cnblogs.com/zui-ai-java/p/14093095.html
Copyright © 2011-2022 走看看