二、Prime Numbers

  1. 质数的核心定义
    质数(素数)是数论最基础、计算机入门最经典的算法模型。
    数学标准定义:
    在大于 1 的自然数中,只能被 1 和自身整除的数,称为质数;
    除质数和 1 以外的自然数,全部为合数。
    核心特征:
    质数最小为 2(唯一的偶数质数)
    所有大于 2 的质数一定是奇数
    质数没有除自身以外的因数
    在 Java 课程体系中,质数算法不是单纯的数学题,而是考察循环结构、条件判断、算法优化思维的核心入门作业。
  2. 为什么课程必考质数算法?
    很多初学者疑惑:为什么编程入门几乎必写质数?
    原因如下:
    (1)完美考察基础语法
    质数判定必须用到:
    for 循环遍历
    if 条件判断
    标记变量思维(flag)
    边界条件处理
    是所有复杂算法的前置基础。
    (2)训练算法优化思想
    质数算法存在明显的暴力解法 → 优化解法迭代过程,
    能直观让初学者理解:
    同样结果,不同代码效率天差地别。
    (3)应用广泛
    质数在计算机领域底层大量使用:
    RSA 加密算法(网络安全核心)
    哈希表扩容规则
    随机数生成
    数据分片、离散计算
  3. 质数判定核心原理分析
    判定一个数 n 是否为质数,本质逻辑:
    检查 2 ~ n-1 之间,是否存在可以整除 n 的数。
    存在 → 合数
    不存在 → 质数
    传统暴力思路(初学者写法)
    遍历:2 ~ n-1
    问题:循环次数过多,大量无效遍历,效率极低
    数学优化原理(课程重点)
    数学结论:
    若一个数 n 存在因数,则一定存在一个因数 小于等于 √n
    所以只需遍历:
    2 ~ √n
    循环直接砍掉大半次数,效率大幅提升,这是课程作业必须掌握的优化写法。
  4. 易错边界总结(考试高频坑点)
    1 不是质数
    2 是最小质数、唯一偶质数
    偶数除了 2 全部不是质数
    负数不存在质数概念
  5. 完整代码实战
    5.1 基础版:单数字质数判定

java作业1
5.2 优化版:开平方优化修复循环语法顺序错误,规范平方根循环写法

java作业2
5.3 进阶版:区间质数筛选(输出指定区间全部质数)修复缺失判断条件、循环语法错误,复用优化后的判定方法

java作业3

posted @ 2026-06-20 15:01  高桥蓝  阅读(5)  评论(0)    收藏  举报