微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如果阿特金斯筛法的时间复杂度比埃拉托色尼筛法好,为什么埃拉托色尼的运行时间总是更快

如何解决如果阿特金斯筛法的时间复杂度比埃拉托色尼筛法好,为什么埃拉托色尼的运行时间总是更快

我正在做一个关于 Sieve of Atkins 的项目,我正在探索创建这个算法的原因。据我所知,它是一种寻找素数的方法,它比埃拉托色尼筛法运行得更快。但从我读到的内容来看,阿特金斯筛法只是理论上运行得更快,而这在实践中从未发生过。我使用 GeeksForGeeks 和 Eratosthenes 的这两个实现对其进行了测试,它们总是运行得更快。但我也读过一些相互矛盾的观点,比如这个 wiki 页面,其中说 Atkins 运行得更快,并且可以优化为理论上运行得更快。

这里是维基(它在复杂性部分讨论了这个):https://en.wikipedia.org/wiki/Generation_of_primes

阿特金斯实施的筛选:https://www.geeksforgeeks.org/sieve-of-atkin/ Eratosthenes 实现的筛选:https://www.geeksforgeeks.org/sieve-of-eratosthenes/

谁能解释一下哪个应该运行得更快?以及为什么永远无法实现阿特金斯筛法的理论时间复杂度。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。