根据链接:http://en.wikipedia.org/wiki/Sieve_of_Sundaram,用于生成数字n的素数列表的“sundram筛”的运行时间为O(n * log(n))。这个算法是否比“阿特金筛选”更好,如果它再详细说明它是如何工作的?
答案 0 :(得分:6)
理论上:
在实践中,Sundaram的筛子是如此之慢以至于没有人使用它,并且Atkin的筛子比优化的Eratosthenes变体慢(尽管它至少是竞争性的)。也许有一天阿特金或其他东西会取代Eratosthenes,但不太可能很快发生。 (此外,没有魔术般的东西。)
答案 1 :(得分:2)
嗯,Sieve of Atkin的维基百科页面说:
此筛使用O(N / log log N)操作
计算高达N的质数
这比Sundaram的Sieve更好,在操作中是Θ(N log N)(注意这不是O(N log N) - O()和Θ()之间存在细微的差别。