素数筛 埃氏筛法

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了素数筛 埃氏筛法相关的知识,希望对你有一定的参考价值。

其原理就是先将2-n之内的所有数存在一个数组里,初始化所有数全为素数,然后从2开始寻找,只要标记是素数便将他的所有倍数的标记都改为合数,依次类推。时间复杂度为O(nloglogn)。

代码实现

技术分享
1 void prime_table()
2 {
3     for(int i=2;(LL)i<=n;i++) prime[i]=1;
4     for(int i=2;(LL)i*i<=n;i++)
5             if(prime[i]) for(LL j=i*i;j<=n;j+=i) prime[j]=0;
6 }
素数筛

 

以上是关于素数筛 埃氏筛法的主要内容,如果未能解决你的问题,请参考以下文章

埃氏筛法(素数筛)

埃氏筛法

埃氏筛法&欧拉筛法

素数的快速筛法(埃氏筛法模板)

埃氏筛法与欧拉筛(超级详解)

素数表的获取(埃氏筛和欧拉筛)