我需要运行具有最坏情况运行时间Θ(n ^ 2)的算法。 之后,我需要运行一次算法5次,每次运行时运行Θ(n ^ 2)。
这些算法的最坏情况运行时间是什么?
在我看来,公式看起来像这样:
( N^2 + (N^2 * 5) )
但是当我用theta表示法分析它时,我的猜测是它在Θ(n ^ 2)时间运行。
我是对的吗?
答案 0 :(得分:3)
两次O(N ^ 2)仍为O(N ^ 2),十次O(N ^ 2)仍为O(N ^ 2),五次O(N ^ 2)仍为O(N ^ N) ^ 2),任何时候O(N ^ 2)仍然是O(N ^ 2),只要'any'是常数。
相同的答案适用于\ Theta而非O.
答案 1 :(得分:2)
它是O(n^2)
,因为你拥有的基本上是O(6n^2)
,它仍然是O(n^2)
,因为你可以忽略常量。你所看到的是属于 set 的函数,而不是函数本身。
基本上,6n^2 ∈ O(n^2)
。
修改强>
你也问过Θ。 Θ为您提供下限和上限,而O仅为您提供上限。你只得到Ω的下限。 Θ是这两者的交集。
任何Θ(f(n))
也是O(f(n))
,但不是相反。