相关疑难解决方法(0)

我的功能的时间复杂度是多少?

开始研究复杂性,我正在努力解决这个问题:

void what(int n) {
    int i;
    for (i = 1; i <= n; i++) {
        int x = n;
        while (x > 0)
            x -= i;
    }
}
Run Code Online (Sandbox Code Playgroud)

好吧,第一个循环显然是O(n).第一次迭代是O(n),第二次是O(n/2)..而且就像log(n)我猜的那样?这意味着O(n) * O(log(n)) = O(n * log(n)) complexity.我做对了吗?

编辑:(不是重复)我知道Big O是什么.我已经在特定情况下询问了正确的评估.

c algorithm time-complexity

92
推荐指数
4
解决办法
5229
查看次数

标签 统计

algorithm ×1

c ×1

time-complexity ×1