面试问题:递归生成素数最快的方法是什么? [关闭]

2024-02-28

生成素数很简单,但是找到它并递归生成(素数)的最快方法是什么?

这是我的解决方案。然而,这并不是最好的方法。我认为它是 O(N*sqrt(N))。如果我错了,请纠正我。

    public static boolean isPrime(int n) {
        if (n < 2) {
            return false;
        } else if (n % 2 == 0 & n != 2) {
            return false;
        } else {
            return isPrime(n, (int) Math.sqrt(n));
        }
    }

    private static boolean isPrime(int n, int i) {
        if (i < 2) {
            return true;
        } else if (n % i == 0) {
            return false;
        } else {
            return isPrime(n, --i);
        }
    }

   public static void generatePrimes(int n){
       if(n < 2) {
            return ;
       } else if(isPrime(n)) {
            System.out.println(n);
       } 

       generatePrimes(--n);

   }

   public static void main(String[] args) {

        generatePrimes(200);
   }

在数学中,阿特金筛是一种快速、现代的算法,用于查找指定整数以内的所有素数。

维基百科文章 http://en.wikipedia.org/wiki/Sieve_of_Atkin(包含伪代码)

为了解决递归地执行此操作的问题,也许埃拉托斯特尼筛法 http://en.wikipedia.org/wiki/Sieve_of_Eratosthenes可以递归实现。这page http://www.cs.cmu.edu/~scandal/cacm/node8.html可能会有所帮助,因为它似乎讨论了递归实现。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

面试问题:递归生成素数最快的方法是什么? [关闭] 的相关文章

随机推荐

  • OpenCV - Java:inRange 函数

    我有我的形象mRgba当我这样做时 Core inRange mRgba B1 B2 mRgba 我得到了我期望的结果 我的所有 RGBA 图像的阈值都在 B1 和 B2 之间 现在我想这样做 Mat roi mRgba submat re
  • Pytorch:获取最终层的正确尺寸

    Pytorch 新手来了 我正在尝试微调 VGG16 模型来预测 3 个不同的类别 我的部分工作涉及将 FC 层转换为 CONV 层 但是 我的预测值不会落在 0 到 2 3 个类别 之间 有人可以向我指出有关如何计算最后一层的正确尺寸的好
  • pyder 中的 Python 调试器在第 2 行停止

    当我尝试调试代码时 调试器在第 2 行停止并且不响应任何命令 例如转到下一行 我正在使用 python 3 9 7 This is what the console looks like If I try to stop the debug
  • 无法加载共享库“libgdiplus” - Docker [带有 Aspose API 的 .NET 应用程序]

    当我创建用于部署的 docker 文件时 应用程序通常在开发环境中工作 但它失败了libgdiplus issue Docker文件 FROM mcr microsoft com dotnet core aspnet 3 0 AS base
  • 具有并排输入字段的 HTML 表单

    我有一个基本上是垂直的 html 表单 但我真的不知道如何在同一行上创建两个文本字段 例如 下面的表格我希望名字和姓氏在同一行 而不是一个在另一个下面
  • 将 UIButton 锚定到 UITableViewController 视图的底部

    我有以下要求 当一个UITableViewController显示的视图中 行数是可变的 在行下方 应显示一个按钮 当行数较小时 按钮应固定在视图的底部 当行数较多时 删除按钮应紧接在最后一行之后放置 换句话说 And not 到目前为止
  • CSS,位置:绝对,滚动条

    假设有一个页面 div div LEFT div div RIGHT div div 为什么水平滚动条只考虑右溢出 换句话说 为什么 LEFT 不触发滚动条 而 RIGHT 却触发呢 除了body gt overflow hidden 对于
  • 获得平均系数和 adj。使用 lapply 来自多个合并回归的 R^2

    我使用循环函数执行了多个池回归 并将回归输出存储在列表中 myregression 我现在想做的是对我的所有回归 即 myregression 列表 有效地执行 lmtest 包中的 coeftest 函数 以调整标准误差和 t 统计量 最
  • Python 中的梯形波

    如何用Python生成梯形波 我研究了 SciPy 和 NumPy 等模块 但没有成功 是否有像 scipy signal gaussian 这样的模块返回代表高斯函数波的值数组 我使用梯形内核生成了这个Astropy https en w
  • 加载图像时 WPF 抛出“无法定位资源”异常

    我有一个 WPF 窗口 其中包含本地系统中一个文件的背景图像 所以 XAML 文件看起来像这样
  • 增量熵计算

    Let std vector
  • 在迭代期间更改 HashMap 键

    是否可以在迭代过程中更改同一个 HashMap 实例的键 因为地图条目集没有方法entry setKey 现在我能想到的是创建另一个 HashMap MultipartParsingResult parsingResult parseReq
  • 如何在 D3 Javascript 中单击节点时显示和隐藏链接和节点

    我正在尝试遵循此 D3 Javascript 链接 gt http bl ocks org mbostock 1093130 http bl ocks org mbostock 1093130了解点击事件的工作原理 我想做的是 当单击蓝色节
  • 如何将所有项目模板数据设置到 Xamarin Carousel 中的单个视图中

    我尝试将 itemtemplate 中的所有项目制作为单个视图 如下图所示 如何使用 Xamarin CarouselView 实现此目的 我正在使用这样的 carousel new CarouselView carousel Bindin
  • 如何只在部分网站上实现HTTPS?

    我想知道 如何在网站的某一部分实现HTTPS 比方说 我想创建网上商店 我希望能够在没有 HTTPS 的情况下浏览所有项目 这样更快 对吧 当我想要付款时 我想使用 HTTPS 正如我在其他文章中读到的那样 当 IIS 配置为使用 HTTP
  • java中'Float a = 3f'和'Float a = 3.0'有什么区别?

    如果我表演 97346822 3f result is 2 9204048E8 however 97346822 3 0 gives me 2 92040466E8 请解释 号码3 0 is the 字面表示 http docs oracl
  • gcc 在链接时忽略符号名称的大小写

    我正在开发的一个软件使用全小写符号名称将 NETLIB BLAS LAPACK 嵌入到其源代码中 但现在将应用程序移植到 Windows 时我发现 Intel MKL 和该平台的其他几个 BLAS LAPACK 实现使用全大写符号名称 有没
  • 为什么需要绑定 `T: 'a` 来存储引用 `&'a T`?

    鉴于此代码 struct RefWrapper lt a T gt r a T 编译器抱怨 错误 参数类型T可能活得不够长 考虑添加显式生命周期界限T a这样引用类型 a T不会比它所指向的数据更长久 我已经多次看到这个错误 到目前为止我只
  • 清除 Android 浏览器历史记录

    我正在为客户编写一个应用程序 该应用程序将有多个可供客户查看和使用的设备 他们希望能够定期清除浏览器历史记录 这样 如果客户打开浏览器访问不适当的网站 下一个客户就不会看到此内容 我目前正在使用它来清除历史记录和搜索 Browser cle
  • 面试问题:递归生成素数最快的方法是什么? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi