文章目录

  • 数输出的实现方式一
  • 质数输出的算法优化一
  • 质数输出的算法优化二
  • break和continue的基本使用
  • 质数输出的实现方式二

数输出的实现方式一

package work.com.cn.entity;
/*
100以内的所有质数的输出。
质数:素数,只能被1和它本身整除的自然数。-->从2开始,到这个数-1结束为止,都不能被这个数本身整除。最小的质数是:2
*/public class PrimeNumberTest {public static void main(String[] args) {boolean isFlag = true;//标识i是否被j除尽,一旦除尽,修改其值 isFlag 可以放在里边就不用重置for(int i = 2;i<100; i++){// boolean isFlag = true;for(int j =2;j<i;j++){if(i % j ==0){isFlag = false;}}if(isFlag == true){System.out.println(i);}//重置isFlagisFlag = true;}}}

质数输出的算法优化一

/*
100000以内的所有质数的输出。实现方式一
质数:素数,只能被1和它本身整除的自然数。-->从2开始,到这个数-1结束为止,都不能被这个数本身整除。对PrimeNumberTest.java文件中质数输出问题的优化
*/
class PrimeNumberTest1 {public static void main(String[] args) {boolean isFlag = true;//标识i是否被j除尽,一旦除尽,修改其值int count = 0;//记录质数的个数//获取当前时间距离1970-01-01 00:00:00 的毫秒数long start = System.currentTimeMillis();for(int i = 2;i <= 100000;i++){//遍历100000以内的自然数//优化二:对本身是质数的自然数是有效的。//for(int j = 2;j < i;j++){for(int j = 2;j <= Math.sqrt(i);j++){//j:被i去除if(i % j == 0){ //i被j除尽isFlag = false;break;//优化一:只对本身非质数的自然数是有效的。}}//if(isFlag == true){//System.out.println(i);count++;}//重置isFlagisFlag = true;}//获取当前时间距离1970-01-01 00:00:00 的毫秒数long end = System.currentTimeMillis();System.out.println("质数的个数为:" + count);System.out.println("所花费的时间为:" + (end - start));//17110 - 优化一:break:1546 - 优化二:13}
}

质数输出的算法优化二

/*
100000以内的所有质数的输出。实现方式二
质数:素数,只能被1和它本身整除的自然数。–>从2开始,到这个数-1结束为止,都不能被这个数本身整除。

对PrimeNumberTest.java文件中质数输出问题的优化
*/
class PrimeNumberTest2 {
public static void main(String[] args) {

  int count = 0;//记录质数的个数//获取当前时间距离1970-01-01 00:00:00 的毫秒数long start = System.currentTimeMillis();label:for(int i = 2;i <= 100000;i++){//遍历100000以内的自然数for(int j = 2;j <= Math.sqrt(i);j++){//j:被i去除if(i % j == 0){ //i被j除尽continue label;}}//能执行到此步骤的,都是质数count++;}//获取当前时间距离1970-01-01 00:00:00 的毫秒数long end = System.currentTimeMillis();System.out.println("质数的个数为:" + count);System.out.println("所花费的时间为:" + (end - start));//17110 - 优化一:break:1546 - 优化二:13

}

}

break和continue的基本使用

/*
break和continue关键字的使用使用范围            循环中使用的作用(不同点)       相同点
break:          switch-case         循环结构中           结束当前循环                  关键字后面不能声明执行语句   continue:       循环结构中           结束当次循环                  关键字后面不能声明执行语句*/
class BreakContinueTest {public static void main(String[] args) {for(int i = 1;i <= 10;i++){if(i % 4 == 0){break;//123//continue;//123567910//System.out.println("今晚迪丽热巴要约我!!!");}System.out.print(i);}System.out.println("\n");//******************************label:for(int i = 1;i <= 4;i++){for(int j = 1;j <= 10;j++){if(j % 4 == 0){//break;//默认跳出包裹此关键字最近的一层循环。//continue;//break label;//结束指定标识的一层循环结构continue label;//结束指定标识的一层循环结构当次循环}System.out.print(j);}System.out.println();}}
}

质数输出的实现方式二

/*
100000以内的所有质数的输出。实现方式二
质数:素数,只能被1和它本身整除的自然数。-->从2开始,到这个数-1结束为止,都不能被这个数本身整除。对PrimeNumberTest.java文件中质数输出问题的优化
*/
class PrimeNumberTest2 {public static void main(String[] args) {int count = 0;//记录质数的个数//获取当前时间距离1970-01-01 00:00:00 的毫秒数long start = System.currentTimeMillis();label:for(int i = 2;i <= 100000;i++){//遍历100000以内的自然数for(int j = 2;j <= Math.sqrt(i);j++){//j:被i去除if(i % j == 0){ //i被j除尽continue label;}}//能执行到此步骤的,都是质数count++;}//获取当前时间距离1970-01-01 00:00:00 的毫秒数long end = System.currentTimeMillis();System.out.println("质数的个数为:" + count);System.out.println("所花费的时间为:" + (end - start));//17110 - 优化一:break:1546 - 优化二:13}
}

Java 质数输出的经典算法题面试可以用相关推荐

  1. java经典100例算法题_10道java经典算法题,每一题都能帮你提升java水平!

    JAVA经典算法题 [程序1] 题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第四个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少? 1.程序分析:兔子 ...

  2. 每日经典算法题(十三) 逆推算法(平方根相关)

    每日经典算法题(十三) 逆推算法(平方根相关) 平方根:Square Root 题目 有一个整数,它加上 100 后是一个 完全平方数 ,再加上 168 又是一个 完全平方数 ,请问该数是多少? 程序 ...

  3. 每日经典算法题(四) 分解质因数

    每日经典算法题(四) 分解质因数 分解质因数:Decomposition Quality Factor 题目 将一个正整数分解质因数.例如:输入 90,打印出:90 = 2 * 3 * 3 * 5 程 ...

  4. python全排序算法题_Python的100道经典算法题(1)

    按照c语言的100道经典算法题,自己原创写的,就得是自己的练习题了 [程序1] 题目:有1.2.3.4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少? 程序分析:可填在百位.十位.个位的数 ...

  5. 每日经典算法题(十六) 九九乘法表

    每日经典算法题(十六) 九九乘法表 九九乘法表:Multiplication Table 99 题目 输出 9 * 9 口诀 程序分析 分行与列考虑,共9行9列,i 控制行,j 控制列 思路 非常经典 ...

  6. 【经典算法题】Pow(x, n)

    [经典算法题]Pow(x, n) Leetcode 0050 Pow(x, n) 题目描述:Leetcode 0050 Pow(x, n) 分析 本题的考点:快速幂. 关于快速幂的讲解可以参考:快速幂 ...

  7. 字节跳动经典算法题:给定一个数n如23121;给定一组数字a如[2 4 9]求由a中元素组成的小于n的最大数

    字节跳动经典算法题(提问次数最多) 题目描述:给定一个数n如23121:给定一组数字a,如[2 4 9]:求由a中元素组成的小于n的最大数. 思路分析:暴力分析手法 1. 判断该位的数值是否在数字a中 ...

  8. 【经典算法题】单词搜索

    [经典算法题]单词搜索 Leetcode 0079 单词搜索 题目描述:Leetcode 0079 单词搜索 分析 本题的考点:递归回溯. 首先我们枚举单词的起点,一共有n×mn \times mn× ...

  9. 【经典算法题】二叉树的最近公共祖先

    [经典算法题]二叉树的最近公共祖先 Leetcode 0235 二叉搜索树的最近公共祖先 题目描述:Leetcode 0235 二叉搜索树的最近公共祖先 分析 本题的考点:LCA(最近公共祖先). 关 ...

最新文章

  1. 删除mysql的root用户恢复方法
  2. 金融风控实战——有监督分箱
  3. 2016年蓝桥杯省赛题解
  4. 电脑没有声音一键修复_电脑上有没有好用点的办公提醒小软件?有带声音提醒的桌面便签软件吗...
  5. C# 调用Windows API实现两个进程间的通信
  6. Windows 8的企业部署之路漫漫兮
  7. centos是什么linux操作系统,Linux 操作系统之CentOS的介绍
  8. AD快捷键无法使用的解决方法
  9. 虚拟服务器软件 海光,海光校园虚拟服务器管理软件技术参数
  10. mac安装win10_mac磁盘空间 mac安装win10分割多少磁盘空间合适
  11. 74cms3.0 SQL注入
  12. python gamma函数_Python 不完全伽马函数
  13. 太阳电池板特性实验_太阳电池伏安特性的测量
  14. Poco Timer
  15. 中国移动云MAS平台发送普通短信
  16. JS 全屏和退出全屏--requestFullScreen详解及兼容代码
  17. drools -规则语法
  18. 史上最全的html标签属性用法对照表
  19. 正则表达式忽略大小写
  20. 如何更改AutoCAD软件图纸背景颜色?

热门文章

  1. 虚幻四中怎么保持导入模型坐标_[CG分享]|虚幻引擎5 技术解析
  2. gitlab merge request
  3. Java常用集合笔记
  4. asp.net 返回表单json数据 辅助类
  5. HTML5实现输入密码(六个格子)
  6. HTTP普及帖2:简单的HTTP(上)
  7. 系统签名缺少libconscrypt_openjdk_jni.so解决
  8. Go两个协程生产消费者模型
  9. Android SharedPreferences的简单使用
  10. 别因为要学的太多反而压垮自己