我们如何比较O(2 ^ n)和Θ(2 ^ n)的时间复杂度?

时间:2019-06-21 09:14:49

标签: algorithm comparison big-o complexity-theory

对于作业问题,我必须比较O(2 ^ n)和Θ(2 ^ n)的时间复杂度。

我相信Θ(2 ^ n)更好,因为它涵盖了2 ^ n的上限和下限,但我不确定。谢谢您的时间。

1 个答案:

答案 0 :(得分:1)

如果您有O(2^n),肯定会更好。因为您可以希望,即使在最坏的情况下也可能会很糟糕。但是那种最坏的情况可能很少发生。因此,平均时间复杂度可能会更好。例如,您遇到的情况是以1/2^n的概率发生的,并且在这种情况下算法以2^n的计算成本运行,但是在所有其他情况下该算法的成本为{{1} }。因此,该算法的复杂度为1,但平均复杂度为O(2^n)

但是,像上面的示例一样,使用O(1)的算法不会发生。 但是在\Theta(2^n)中,您将确定平均时间复杂度为Theta(2^n),并且可能会很糟糕。