据我所知,线性复杂度可以表示为简单循环,二次复杂度可以表示为嵌套循环。如何表示立方和对数复杂度?
谢谢!
答案 0 :(得分:9)
简单循环可以具有对数复杂度,例如
for (i = 1; i <= N; i *= 2)
...
正如其他人已经回答的那样,三重嵌套循环将具有立方复杂性。
答案 1 :(得分:5)
由于cubic是O(n ^ 3),它将是三个嵌套循环。
对数不是那么简单,通常需要递归关系。 例如,MergeSort是O(n * log(n)),因为它形成了高度log(n)的递归树,并且每个级别都需要O(n)合并操作。
答案 2 :(得分:1)
答案 3 :(得分:1)
答案 4 :(得分:0)
O(n ^ 3)可以用3个嵌套循环表示。
O(log n)由循环表示,每次迭代时,需要处理的数据量减少一半。