C 程式如下
bool prime[20000000];
void eratosthenes()
{
for (int i=0; i < 20000000; i++)
prime[i] = true;
prime[0] = false;
prime[1] = false;
for (int i=2; i < 20000000; i++)
if (prime[i])
for (int j=i*i; j < 20000000; j+=i)
prime[j] = false;
}
用來實做質數表非常有用,在這邊也有提到更多細節與加速該演算法的方法
沒有留言:
張貼留言