算法的时间复杂度

时间:2015-02-15 06:05:00

标签: algorithm

与同一主题相关我还有另一个问题,即要弄清楚N的素数。算法的工作方式是,在第一步中它排除了三分之一的数字,然后在第二步,它规则剩下的三分之一,直到我检查了所有。那我怎么弄清楚它的时间复杂性呢?它也会是N的顺序吗?我的意思是在第一步中我将剩下2/3个数字。然后在第二个我将删除1/3的2/3,依此类推。但是我该怎么做呢?我很困惑。

1 个答案:

答案 0 :(得分:1)

假设你花费恒定的时间O(1)来“统治一个数字”,总的努力是

O(N * (1 + 2/3 + 4/9 + 8/27 + ...))

几何级数收敛到3,因此总的努力量为O(N)。