摘要:
这个是经典的Eraosthenes筛法:1 for (int i = 2; i * i < N; i++)2 {3 if (tag[i]) continue;4 for (int j = i; j * j < N; j++)5 tag[i*j] = 1;6 }7 for (int i = 2; i < N; i++)8 if (!tag[i])9 prime[tol++] = i;但是Eraosthenes筛法的速度并不快,原因在于对于一个合数,这种方法会重复的标记。一种线性筛素数的方法有效的解决了这一点,代码如下: 1 void get... 阅读全文