我做了一些搜索,找不到任何有關此實現的信息與我見過的其他任何信息。Eratosthenes算法的篩選器
function sieve($top)
{
for($i = 11; $i<$top; $i+=2)
{
if($i % 3 == 0 || $i % 5 == 0
|| $i % 7 == 0)
{
continue;
}
echo "$i <br />";
}
}
是的,我知道它只是打印出來,但這不是重要的部分。無論是時間還是其他時間,主要的缺陷是什麼?
編輯:除了可伸縮性還有其他問題嗎?同樣再次感謝關於推進主要發現的意見。
可能只是一個錯字,但你必須爲'($ 1 ... )代替第三行中的($ i ...)' – 2009-12-07 17:45:56
這個代碼輸出的第一個非素數是221. 221是13 * 17。 – Greg 2009-12-07 17:49:28
Damnit。我的意思是169(13 * 13)。 – Greg 2009-12-07 17:51:45