最坏情况,大0,大和



在最坏的情况下,我很难理解这三种符号的区别。

最坏情况下的大0 =上界,永远不会跑得更快。

大ω =下界的最坏情况,在最坏情况下永远不会跑得更快?

最坏情况下大θ =在下界和上界之间,在最坏情况下会在这些边界之间运行吗?

编辑:

对不起,我没说清楚。我不确定我对0的最坏情况,和的最坏情况的理解是否正确。我在"="后面写的是什么?

你的提纲大体上是正确的。一个重要的区别是情况和边界之间的区别。

案例是当前正在考虑的输入类别。你可以考虑哪一类输入是你的算法表现最差的,哪一类输入是你的算法表现最好的。

边界是一个函数,表示算法使用的资源(通常是时间或空间)如何随着输入的变化而变化。上界和下界是典型的。

您可以自由地混合和匹配您认为合适的大小写和边界。

也许你想知道你的算法的最坏情况的上界,这样你就可以知道在最坏的情况下缩放会是什么样子。这可以给您信心,无论如何使用,您的解决方案都可以很好地扩展

也许你想知道最坏情况的下界,以知道你的解决方案是否像它可能的那样快——如果它的缩放行为是你试图解决的问题的最佳选择。例如,我们知道基于比较的整数排序是(n log n)没有任何额外的假设。如果你写一个排序过程,你能达到这个界限吗,还是你的方法更慢?

最佳案例分析当然也有它的用途。你也可以通过给定参数的输入分布来讨论平均情况分析,并找到相应的边界;一种类似的分析是平摊分析你的"情况"实际上是一个操作序列。

最新更新