zoukankan      html  css  js  c++  java
  • 素数筛选

    主要有两种一种是埃氏筛选法,一种是欧拉筛选法,欧拉筛选法是埃式筛选法的改进。

    #include <iostream> #include <cstring> #include <cstdio> #include <algorithm> using namespace std; const int MAXN=1000; bool isPrime[MAXN]; int Prime[MAXN]; int PriN;
    //埃式筛选法
    void solve(int N){ PriN=0; memset(isPrime,true,sizeof(isPrime)); isPrime[0]=isPrime[1]=false; for(int i=2;i<=N;i++){ if(isPrime[i]){ Prime[PriN++]=i; for(int j=i*i;j<=N;j+=i) isPrime[j]=false; } } }
    //欧拉筛选法
    void Eular(int N){ PriN=0; memset(isPrime,true,sizeof(isPrime)); isPrime[0]=isPrime[1]=false; for(int i=2;i<=N;i++){ if(isPrime[i]) Prime[PriN++]=i; for(int j=0;j<PriN;j++){ if(i*Prime[j]>N) break; isPrime[i*Prime[j]]=0; if(i*Prime[j]==0) break; } } } int main(){ int N=100; solve(N); for(int i=0;i<PriN;i++) cout<<Prime[i]<<" "; cout<<endl; cout<<"-----------------------------------------"<<endl; Eular(N); for(int i=0;i<PriN;i++) cout<<Prime[i]<<" "; cout<<endl; }
  • 相关阅读:
    http协议
    web应用
    前端基础-jquery
    jQuery的事件
    2.UML类图基本介绍
    1.设计模式的七大原则
    使用OpenFeign远程调用时请求头处理报错问题
    SpringCloud Config-分布式配置中心
    19. 类加载器详解
    18. 类加载过程详解
  • 原文地址:https://www.cnblogs.com/IKnowYou0/p/6673351.html
Copyright © 2011-2022 走看看