1.题目描述
寻找[1,n]内的质数
2.常规算法
从2开始,删除2及2的倍数直到边界,
下一个数字必为质数,继续删除
在这里插入代码片
3.快速线性筛选法
(1)把2到n的自然数放入a[2]到a[n]中(所放入的数与下标号相同) ;
(2)在数组元素中以下标为序,按顺序找到未曾找过的最小素数minp和它的位置p(即下标号);
(3)从p+1开始,把凡是能被minp整除的各元素值从a数组中划去(筛掉),也就是把该元素标记为0;
(4)让p=p+1,重复执行第(2) (3)步骤,知道,minp>floor(sqrt(n))为止;
(5)打印输出a数组中留下来的数,未被筛掉的各元素值;
在这里插入代码片