功能:用来产生一个不大于给定整数n的连续质数序列
算法 Sieve(n)
//实现“埃拉托色尼的筛子”
//输入:一个正整数≥2
//输出:包含所有小于等于n的质数的数组L
for p←2 to n do A[p]←p //A[p]表示数组
for p←2 to do //
表示向下取整函数,即求舍去小数部分后的整数值
if A[p]≠0 //p没有被前面的步骤消去
j←p*p
while j≤n do
A[j]←0 //将该元素标记为已经消去
j←j+p
//将A中剩余的元素复制到质数数组L中
i←0
for p←2 to n do
if A[p]≠0
L[i]←A[p]
i←i+1
return L
284

被折叠的 条评论
为什么被折叠?



