【问题标题】:Java BigInteger prime generation algorithm [duplicate]Java BigInteger素数生成算法[重复]
【发布时间】:2015-08-04 05:23:51
【问题描述】:

Java 中的 BigInteger 具有生成素数的构造函数,我找不到任何提及其中使用的算法。是否有算法的名称或描述该算法的书?

【问题讨论】:

标签: java algorithm math


【解决方案1】:

建议probablePrime 方法优先使用此构造函数,除非有 迫切需要指定确定性。 - 来自Java 7 BigInteger API docs

话虽如此。 BigInteger 的可能素数方法同时使用 Miller-Rabin 和 Lucas-Lehmer 算法来测试素数。

查看传球米勒拉宾(回合,随机)&& 传球卢卡斯莱默();在BigInteger internal method primeToCertainty from java 7

进一步阅读:

  1. Miller-Rabin primality test (Java)
  2. Lucas-Lehmer test

【讨论】:

    【解决方案2】:

    所使用的算法是一个实现细节,可能因 jdk 不同而不同,甚至在不同版本之间也是如此。合约只是它给你一个质数,而不是它遵循任何给定的算法来这样做。

    【讨论】:

      猜你喜欢
      • 2019-09-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-01-11
      • 1970-01-01
      • 2011-05-13
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多