可以确定一个数字是否是O(1)时间复杂性中的素数

时间:2013-12-07 12:41:37

标签: time

任何人都可以告诉我一种决定数字的方法是O(1)中的素数吗?

在采访中问我

4 个答案:

答案 0 :(得分:2)

你真的找不到一种方法来决定一个数字是否是O(1)中的素数所以我会说如果有任何限制,你就可以像Yanzhe Chen说的那样使用哈希表。但如果没有限制,它将无效。

答案 1 :(得分:2)

如果没有限制,答案就不是真的。如果有,那么只需使用一个表。

答案 2 :(得分:1)

如果存在此类查询的范围限制,则可以使用哈希表,否则无法使用。一种简单的方法是将所有素数存储在一个表中,其中键是数字本身,值是否为素数。当然,你必须有这样一个表的限制范围。

答案 3 :(得分:0)

除非你有一个包含所有素数的无限HashSet /类似物,否则你不能。你不能拥有其中之一,嗯,你做不到。

Some tests在多项式时间内工作。