【发布时间】:2017-11-27 19:45:18
【问题描述】:
到目前为止,我一直在使用 Eratosthenes 筛来生成所有“n”个素数。
但是,我想知道是否存在更好的算法,或者我们可以改进现有的性能更好的算法吗??
【问题讨论】:
-
要找到第 N 个素数,您需要检查 (N-1) 个较小的素数。为此,最好使用筛子。
-
@rossum,这不是真的。没有找到之前的素数,就可以找到第 N 个素数。
-
正是我的想法。但是,还有一个 Sundaram 筛子,稍微好一点。但是,我想知道另一种有效的算法
-
要生成许多素数,最好使用筛子。在实践中,Eratosthenes 的分段筛是最快的(包括 Atkin、Sundaram 和整体 SoE)。但是对于第 n 个素数,我们不需要全部生成。
-
参见。 stackoverflow.com/questions/9625663/…(搜索“快捷方式”)。
标签: primes sieve-of-eratosthenes