int main() {
int i, a[N];
// initialize the array
for(i = 2; i < N; i++) a[i] = 1;
for(i = 2; i < N; i++)
if(a[i])
for(int j = i; j*i < N; j++) a[i*j] =0;
// pirnt the primes less then N
for(i = 2; i < N; i++)
if(a[i]) cout << " " << i;
cout << endl;
}
它在算法的書我讀運行上述程序給定的時間是成正比N+N/2+N/3+N/5+N/7+N/11+...
,運行時間打印出下N的所有素數
請幫助我理解作者是如何想出了上面的方程來自程序。 謝謝! Venkata
感謝您的幫助。現在我明白了算法的運行時間是如何延長的。 – Venkata 2010-10-30 16:47:56