小编Mon*_*onk的帖子

为什么 big-Oh 并不总是算法的最坏情况分析?

我正在尝试学习算法分析,但我陷入了asymptotic notation(大O...)和cases(最佳、最差和平均)之间的关系。

我了解到该Big O符号定义了算法的上限,即它定义函数的增长不能超过其上限。

起初,我觉得它计算的是最坏的情况。我谷歌了一下(为什么最坏的情况不是大O?)并得到了大量的答案,这些答案对于初学者来说并不那么容易理解。

我的结论如下: Big O并不总是用来表示算法的最坏情况分析,因为,假设一个算法对最佳、平均和最差输入采取 O(n) 执行步骤,那么它的最佳、平均和最坏情况可以表示为 O (n)。

请告诉我我是否正确或者我遗漏了什么,因为我没有人来验证我的理解。请提出一个更好的例子来理解为什么Big O并不总是如此worst case

algorithm complexity-theory time-complexity data-structures

7
推荐指数
1
解决办法
1万
查看次数