【问题标题】:Generating first n prime numbers using dynamic programming使用动态规划生成前 n 个素数
【发布时间】:2015-03-13 05:32:45
【问题描述】:

如何使用动态规划生成前 n 个素数? (代码不是必需的,只要概念就足够了)

【问题讨论】:

  • 为什么这个问题被否决了?这是一个很好的问题。使用 Sieve 的方法,必须预先确定素数的范围,而计算范围并不明显。

标签: java dynamic-programming


【解决方案1】:

我们可以使用记忆技术来使用动态编程生成素数。您可以编写一个函数,它接受要检查的数字(比如 x)的素数和另一个接受除数的参数(比如变量是 i)。在函数内部检查条件,如 i==1 然后返回 1 和 x%i==0 然后返回 0 并再次递归调用函数并递减 i 并将结果存储到数组中。

【讨论】:

  • 与筛法相比,这种方法的时间复杂度是多少?
【解决方案2】:

如果你用谷歌搜索,你会很容易找到解决方案: 顺便说一句,解决方案是 这里描述的使用方法: http://en.wikipedia.org/wiki/Sieve_of_Eratosthenes

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-06-15
    • 1970-01-01
    • 2012-07-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-01-15
    • 2013-03-21
    相关资源
    最近更新 更多