当前位置: 首页 > news >正文

质数筛-埃氏筛

质数的定义:只能被 1 和它自身整除的数

优势

相比于暴力的筛法,埃氏筛的算法效率要快不少,虽然比起欧拉筛来说,埃氏筛的优化仍然有待提高。但比起欧拉筛,埃氏筛的理解难度要小不少。

埃氏筛介绍

埃氏筛的时间复杂度在O()

我们可以想到一点,任何数的倍数都不可能为质数,所以我们可以因此来抹去一些与一个数倍数相关的数。其实就是空间换时间的想法

代码部分

暴力筛

#include<iostream> using namespace std; int main(){ int n; cin >> n; //判断 n 是不是质数 int flag = 1; if(n == 1){ flag = 0; }else{ for(int i = 2 ; i < n ; i++){ if(n % i == 0) flag = 0; } } //是质数输出yes,反之输出no if(flag) cout << "yes" << endl; else cout << "no" << endl; return 0; }

当然,在实际的使用中,你也可以通过打表的方法来提高筛法的效率。当然,在算法比赛中,很多时候你打出来的表不一定管用。

循环也可以把遍历的条件改成 i <=, 这样也可以提高效率

埃氏筛

#include<iostream> #include<cstring> using namespace std; const int N = 1e5; int flag[N]; int main(){ int n; cin >> n; //把flag全初始化为 1(除了 0 和 1) memset(flag , 1 ,sizeof(flag)); flag[0] = 0; flag[1] = 0; //开始筛,质数的倍数全都打上标记 for(int i = 2 ; i * i <= n ; i++){ for(int j = i * 2 ; j <= n ; j += i){ flag[j] = 0; } } //输出 for(int i = 0 ; i < n ; i++){ if(flag[i]) cout << i << ' '; } cout << endl; return 0; }
http://www.jsqmd.com/news/117287/

相关文章:

  • 汇编语言全接触-39.获得结果
  • Linly-Talker支持语音变声功能吗?保护隐私
  • Linly-Talker如何优化内存占用?轻量化改进措施
  • 质数筛-欧拉筛
  • Linly-Talker能否用于博物馆文物解说机器人?
  • Linly-Talker支持OAuth2.0鉴权机制吗?
  • Linly-Talker能否用于法院普法宣传教育?
  • Linly-Talker支持断点续传视频上传功能吗?
  • 2025年下半年四川成都食用油工厂专业选择指南 - 2025年品牌推荐榜
  • 没有/不用pom.xml文件下将jar包安装到本地maven仓库命令
  • gpt-oss-120b开源模型4bit量化版发布:大模型高效部署新纪元
  • 2025年12月江苏徐州民族舞舞蹈学校深度测评与推荐报告 - 2025年品牌推荐榜
  • Linly-Talker能否用于高校英语口语陪练机器人?
  • 河北石家庄/山东济南/天津商业文旅街区氛围设计公司【力荐】
  • 小笔记
  • Python系列Bug修复PyCharm控制台pip install报错:如何解决 pip install 网络报错 企业网关拦截 User-Agent 问题
  • 手术导航轨迹偏移 补生物力学约束才校准PINN模型
  • 脊为枢纽,小腿调全身,道医传人李章武外治研究获国家奖
  • Linly-Talker如何防止模型过拟合导致的僵硬表情?
  • Linly-Talker能否生成财经类节目分析师形象?
  • Linly-Talker在消防应急演练中的语音指挥应用
  • Linly-Talker支持音频降噪预处理吗?提升ASR效果
  • [Java]PTA:jmu-Java-06异常-ArrayIntegerStack异常改进版
  • Linly-Talker能否生成航天工程师形象讲解火箭发射?
  • 53、FTDI设备使用与驱动配置全解析
  • 2025年12月新沂PC砖生产商哪家强? - 2025年品牌推荐榜
  • 54、第三方FTDI应用模块与自定义流驱动开发
  • 13、Windows Socket编程:从基础到应用的深度解析
  • python django flask餐饮连锁店点餐食材采购管理系统的设计与实现_971i3t7j--论文
  • python django flask高校创新创业课程体系选择系统的设计与实现_学习资源推荐选课系统196muhq--论文