埃氏筛法 素数

来源:互联网 发布:福州市网络家长学校umu 编辑:程序博客网 时间:2024/04/28 15:21

今天 看了 《编程珠玑》  看到了 埃氏筛法   令我大为震惊  、、、、、、、、查找素数竟然 这么快 


因此将 代码 贴出来 、、、、、、、、、、、

# include<stdio.h>#include "boost/timer.hpp"#include<stdlib.h>int main (){int p=2,n=10000000;  int i;  double time;bool* x=new bool[10000001]; for ( i=0;i<=n;++i)  //初始化 x{*(x+i)=1;}boost::timer t;   // 声明 定时器while(p<=n){for(i=2*p;i<=n;i=i+p)  // 关键部分{*(x+i)=0;}do  ++p;while(*(x+p)==0);}time=t.elapsed();printf("%8f  \n",time);delete x;system("pause");return true;}
运算速度 1000w  不到0.5秒   快爆了。。。。。。。。。

原创粉丝点击