java - 提取素数

标签 java arrays sieve-of-eratosthenes

我需要创建一个方法来标记素数并返回素数的计数。

我走了这么远:

  private static int[] extractPrimesNumbers(int[] array, int countOfPrimeNumbers) {
        int[] primeNumber = new int[countOfPrimeNumbers];
        int position = 0;
        for (int j = 2; j < array.length; j++) {
            for(int key : array) {
                if(j == 2) {
                    array[position] = j;
                }
                boolean isDividedByJ = j % j == 0;
                boolean isDividedbyTwo = j % 2 != 0;
                if(isDividedByJ && isDividedbyTwo) {
                    array[position] = j;
                    position++;
                    j++;
                }
            }

我不知道如何标记非素数。我认为最好的方法是用 0 标记非素数,然后计算高于 0 的位置/索引的值(value)量。 值得一提的是,所有事情都需要使用数组以一种方法进行。无法使用外部 boolean 方法对 Prime 使用任何标准解决方案。

最佳答案

只返回质数数组,无需标记。新数组和旧数组的 cont 中的差异也为您提供了非素数的 cont。

关于java - 提取素数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60128771/

相关文章:

javascript - 如何指定数组索引?

prolog - 在序言中卡住目标

java - RequestMapping 是否从 Spring 3.2.1 中删除

java - session.createQuery() 在 spring 中不返回列表

java - 使用java代码显示、检查和启动linux进程

有人可以给我一个 "pure pointer notation"到 C 数组的例子吗?

关于循环的 while 语句的 PHP 问题

java - 将 webapp 从 Eclipse 部署到 Tomcat 根上下文

c++ - 带轮分解的埃拉托色尼筛法

python - 改进 Euler #10 上的运行时间