用“埃氏筛法”求2~100以内的素数。2~100以内的数,先去掉2的倍数,再去掉3的倍数,再去掉5的倍数,……依此类推

来源:互联网 发布:windows.old还原 编辑:程序博客网 时间:2024/05/15 05:21
import java.util.ArrayList;import java.util.List;/** * @author Shicrom * @see 用“埃氏筛法”求2~100以内的素数。 * @classname 埃氏筛法的外文名称 */public class SieveOfEratosthenes {public static void main(String[] args) {/** * @number 声明一个空的List集合 */List<Integer> number = new ArrayList<Integer>();System.out.print("用“埃氏筛法”求2~100以内的素数:\n");for (int i = 0, y = 2; i < 98; i++, y++) {number.add(i, y);}// 给空的集合注入2到99的值,用于计算for (int i = 0, y = 2; i < number.size(); i++, y++) {for (int j = 0; j < number.size(); j++) {if (number.get(j) % y == 0) {if (number.get(j) == y) {continue;} else {number.remove(j);// 去除能给自身取余的数,保留自己}}}System.out.print(number.get(i) + " ");}}}

1 0
原创粉丝点击