【发布时间】:2015-10-23 04:51:43
【问题描述】:
big-O 的运行时间是多少?我对while循环运行时间感到很困惑。我知道两个 for 循环的运行时间都是 O(n)。
cin >> n >> min >> max;
for(int i = min; i < n; i++) {
for(int j = 1; j < max; j++) {
total = 1;
while(total < n) {
total = total *2;
}
}
}
【问题讨论】:
-
括号清楚。如果没有括号,则 ans 为 O(logn)。如果您遵循 python 缩进风格来暗示嵌套循环,那么它的 O(nmaxlogn).
-
为什么你认为内循环是
O(n)?在我看来,它就像O(max)。
标签: java c++ algorithm runtime