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

论《素数的几种筛法》

第一种 试除法

每一个除一除,试一试就好了

bool prime(int n){ if(n<2)return false;for(int i=2;i<=n;i++){if(n%i==0)return false;}return true;
}

    这个都会,不说了

    优化:其实只用枚举至sqrt(n),就可以省掉一些时间

    bool prime(int n){ if(n<2)return false;for(int i=2;i*i<=n;i++){if(n%i==0)return false;}return true;
    }

      优点:通俗易懂(在本题库能解决大部分素数)
      缺点:很慢(请看后面)

      第二种 埃筛

      原理:写下2~n数字,先找出第一个数,将其倍数划去,再找新一个未被划去的数,再将其倍数划去,重复此步骤,最后得到的是素数

      int primes[n],cnt;
      bool v[n];
      void aishai(int n){for(int i=2;i<=n;i++){if(v[i]) continue;primes[cnt++]=i;for(int j=i+1;j<=n;j+=i)v[j]=true;}
      }

        优点:可以快速筛出大量质数,可应对大量素数题目

        第三种:线性筛(埃筛优化版)

        这个不用说了,看代码:

        int primes[n],cnt;
        bool v[n];
        void xianxingshai(int n){for(int i=2;i<=n;i++){if(!v[i]) primes[cnt++]=i;for(int j=0;i*primes[j]<=n;j++){v[primes[j]*i]=true;if(i%primes[j]==0) break;}}
        }

        优点:可应对绝大多数素数题目,很快

        http://www.dtcms.com/a/494868.html

        相关文章:

      1. html静态页面怎么放在网站上原平的旅游网站怎么做的
      2. 网页设计与网站建设作业公众号小程序制作步骤
      3. 律师怎么做网站简单大气网站模板
      4. 偏振相机在半导体制造的领域的应用
      5. Uniapp微信小程序开发:EF Core 中级联删除
      6. Java从入门到精通 - 集合框架(二)
      7. 3proxy保姆级教程:WIN连接远端HTTPS代理
      8. 大厂AI各走“开源”路
      9. 室内装修效果图网站有哪些百度网盟推广是什么
      10. grootN1 grootN1.5 gr00t安装方法以及使用(学习)
      11. Typora(跨平台MarkDown编辑器) v1.12.2 中文绿色版
      12. Unity开发抖音小游戏的震动
      13. 团队作业——概要设计和数据库设计
      14. 在Spring Boot开发中,HEAD、OPTIONS和 TRACE这些HTTP方法各有其特定的应用场景和实现方式
      15. Flink DataStream「全分区窗口处理」mapPartition / sortPartition / aggregate / reduce
      16. 网站备案号码查询大连网页设计哪家好
      17. Next.js 入门指南
      18. arcgis api for javascript 修改地图图层要素默认的高亮效果
      19. 【论文速递】2025年第28周(Jul-06-12)(Robotics/Embodied AI/LLM)
      20. 宁波市鄞州区建设局网站怎么做网站静态布局
      21. 一文掌握 CodeX CLI 安装以及使用!
      22. Android实战进阶 - 用户闲置超时自动退出登录功能详解
      23. 2二、u-boot移植
      24. 淄博网站建设哪家好常德网站建设技术
      25. Java Spring日志
      26. OpenAI Agent Kit 全网首发深度解读与上手指南
      27. 网络:2.Socket编程UDP
      28. Linux服务器编程实践45-UDP数据读写:recvfrom与sendto函数的使用实例
      29. 基于SpringBoot+Vue的数码交流管理系统(AI问答、协同过滤算法、websocket实时聊天、Echarts图形化分析)
      30. 设计模式篇之 状态模式 State