【发布时间】:2015-01-26 03:03:23
【问题描述】:
我知道每个 for 循环都是 O(log₂n),但我不确定它们中的 3 个一起会产生什么? O(3⋅log2n)?谢谢各位。
for (int i = n; i > 0; i = i / 2) {
for (int j = n; j > 0; j = j / 2) {
for (int k = n; k > 0; k = k / 2) {
count++;
}
}
}
【问题讨论】:
-
我觉得不是O(3log2n),应该是O(logN * logN * logN) PS:可以让n从2到1024,打印出(n, count的元组),然后画一条线。
-
我投票结束这个问题,因为它是关于计算复杂性的纯理论问题,而不是关于编程的实际问题。试试cs.stackexchange.com 另外,这个标题不太可能对其他有同样问题的人有用。 (应该更像“计算嵌套循环的复杂度”)。
-
在cs上太初级了:
标签: big-o complexity-theory time-complexity