Big o 渐近符号ω

Big o 渐近符号ω,big-o,Big O,BigO总是检查上界。因此,我们可以衡量……我们编写代码的方式,这样时间复杂度就会降低,从而提高代码性能。但是为什么我们要使用下半身(欧米茄)?我不理解实时使用欧米茄。有人能给我推荐一下吗?这是一项精密功能。碰巧的是,证明一个算法需要,比如说,O(n)运算才能完成通常比证明它至少需要O(n)运算要容易得多(顺便说一句,在这种情况下,运算意味着基本计算,如逻辑和算术计算) 通过提供一个下限,您还可以估计最佳情况,因为big-O表示法只提供一个上限 从实用的角度来看,这有一个好处,即无论发生什么情况

BigO总是检查上界。因此,我们可以衡量……我们编写代码的方式,这样时间复杂度就会降低,从而提高代码性能。但是为什么我们要使用下半身(欧米茄)?我不理解实时使用欧米茄。有人能给我推荐一下吗?这是一项精密功能。碰巧的是,证明一个算法需要,比如说,
O(n)
运算才能完成通常比证明它至少需要
O(n)
运算要容易得多(顺便说一句,在这种情况下,运算意味着基本计算,如逻辑和算术计算)

通过提供一个下限,您还可以估计最佳情况,因为big-O表示法只提供一个上限

从实用的角度来看,这有一个好处,即无论发生什么情况,任何算法都需要很多(基本)步骤(或更多)

还要注意的是,对平均值、最坏值和最佳值进行估计也是很有用的,因为这将更加清楚地说明算法的复杂性


有些问题的内在复杂性至少在某种程度上是已知的(这意味着有一个数学定理可以证明这一事实)。因此,无论采用何种算法,这些问题都不可能用少于一定数量的计算来解决。这也很有用,因为它可以让您知道给定的算法是次优算法还是与问题的固有复杂性相匹配。

我从上述讨论中了解到,omega表示“此函数将至少执行这么多次”,即下限(或最小值)。例如:对于I=0;i),通常不使用Ω较大的算法。我理解,我们考虑下界,如果它是Simimar或接近上界。在任何给定的场景中,对于任何算法,哪一个是第一个(或)被赋予第一优先级的?上界还是下界?上界,即大操作系统,是最常用的。