最坏情况运行时间与Omega表示法之间的混淆

时间:2015-10-02 06:04:25

标签: algorithm asymptotic-complexity

我被问到这个问题:

哪些排序算法的最差情况运行时间为Ω(n2) - 冒泡排序,堆排序,插入排序,合并排序,快速排序(具有良好的中位数查找),选择排序。

有人可以解释需要做什么吗?

1 个答案:

答案 0 :(得分:0)

简单地说,分析的类型和符号是单独的术语。你可以在任何分析中应用big-O,little-o,big-Omga,little-omega,big theta等(如代字号)(包括:最佳情况,最差情况,平均情况)。

您有分析类型。这为您提供了复杂性功能,例如对于合并排序的最坏情况:

T(n) = 2T(n/2) + CONST*n + SOME_CONSTANT

然后,您可以分析此T(n)并得出一些结论。渐近符号是一组函数,或者" family"具有共同渐近行为的函数。对于上面的示例,您可以得出结论:

  • 此功能在Theta(nlogn)
  • 此功能在O(nlogn)
  • 此功能在Omega(1)
  • 此功能在O(n ^ 3)