我写过的最优化的求素数表的算法
#define NUM 1000000 #define N NUM/2 bool prime[N]; void prim(void) { int i,j,len; len=(int)sqrt(NUM); memset(prime,1,N); for(i=0;2*i+3<len;i++) if(prime[i]) for(j=3*i+3;j<N;j+=2*i+3) prime[j]=0; //输出素数表 for(i=0;i<N;i++) if(prime[i]) cout<<2*i+3<<"/t"; }
posted on 2009-09-06 19:15 草头菜 阅读(116) 评论(0) 编辑 收藏 举报
Powered by: 博客园 Copyright © 2024 草头菜 Powered by .NET 8.0 on Kubernetes