埃拉托色尼筛法是一种用于求出自然数中小于等于给定数n的所有质数的算法。这种算法的基本思想是:从2开始,将每个质数的倍数都标记为合数,然后再找下一个未被标记的数,将它的倍数也标记为合数,依此类推。这样,当搜索结束时,剩余的数都是质数。
例如,假设要求出小于等于10的质数,可以这样做:
首先将2~10的数字列出来:2 3 4 5 6 7 8 9 10
从2开始,将2的倍数标记为合数,得到:2 3 X 5 X 7 X 9 X
接着,找下一个未被标记的数3,将3的倍数标记为合数,得到:2 3 X 5 X 7 X 9 X X
接着,找下一个未被标记的数5,将5的倍数标记为合数,得到:2 3 X