如何找到复杂度为o(1)
的第n个素数答案 0 :(得分:3)
在O(1)中执行此操作的唯一方法是所有素数的数组。因此,根据计算机的内存,您只能支持一定数量的数据。
修改强>
可能有某种方法来计算这涉及一堆微积分,但这超出了我的范围:)
答案 1 :(得分:2)
你做不到。实际上,如果不进行详尽的搜索,就无法枚举素数。
如果您的数据库的所有素数都高达 n ,您可以在{中搜索第n个素数(最多 n ) {1}}。
答案 2 :(得分:1)
在固定时间内找到第n个素数意味着有一个合理的公式来计算pi(n)(返回第n个素数)。有关此主题的初步讨论,请参阅http://primes.utm.edu/notes/faq/p_n.html。