今天Eratosthenes的Sieve在哪里使用?

时间:2014-04-18 19:27:03

标签: algorithm sieve-of-eratosthenes

我正在做一篇关于这个主题的研究论文,虽然我发现很多关于 算法如何工作/应该实现的例子和讨论,但我找不到任何东西在 实际使用的地方。

今天有没有使用该算法的字段?或者人们只是为了实现这个目标而嘲笑" n giggles" (它相当简单,所以这有点意义)?

我知道大质数在加密领域很重要,但我怀疑筛子是用来寻找/生成这些质数的。此外,寻找大质数所需的大量内存也使得它们效率低下。

今天在任何地方都可以使用任何形式的算法吗?

2 个答案:

答案 0 :(得分:2)

根据the Wikipedia article on the subject,该特定的筛子仍然是一种非常有效的方法,可以生成价值低于几百万的完整素数列表。此外,general idea of a sieve用于其他几个更强大的算法,例如General number field sieve用于分解大整数。

答案 1 :(得分:1)

您可以将主筛作为动态编程的应用程序查看到小的完整素数枚举和测试。所以你的问题实际上是“我们需要什么素数?”。它们是数论的基本部分。作为将整数编码到其素因子分解中的一个示例具有各种有用的属性和更高级别的实用程序。通过向筛子添加回溯,我们可以非常快速地执行此分解。