Big O表示法的复杂度顺序是什么?
嗨,我正在尝试了解按大O表示法表示的复杂性顺序是什么。我已经阅读了许多文章,甚至在这里对Big O的有用描述中,也找不到任何能确切解释“复杂性顺序”的内容。
我已经了解的部分。关于Big
O表示法是,我们正在根据输入大小n的增长来衡量算法的时间和空间复杂度。我也了解某些排序方法对于O来说具有最佳,最坏和平均的情况,例如O(n),O(n ^
2)等,并且n是输入大小(要排序的元素数)。
任何简单的定义或示例,将不胜感激,谢谢。
回答:
大O是要为某些功能的增长找到上限。请参阅Wikipedia上的正式定义http://en.wikipedia.org/wiki/Big_O_notation
因此,如果您有一个对大小数组进行排序的算法,n
并且只需要恒定量的额外空间,并且需要完成(例如)2 n² +
n步骤,那么您会说它的空间复杂度是O(n)
或O(1)
(取决于您计算的数量输入数组的大小与否)及其时间复杂度为O(n²)
。
仅知道这些O
数字,您就可以大致确定n
到达n + 100
和/ 2 n
或感兴趣的任何地方还需要多少空间和时间。这就是算法“扩展”的程度。
大O和复杂性实际上只是同一件事的两个术语。您可以说用“线性复杂度”代替O(n)
,用二次复杂度代替O(n²)
,等等。
以上是 Big O表示法的复杂度顺序是什么? 的全部内容, 来源链接: utcz.com/qa/422323.html