Time 当极限在循环内变化时,该算法的时间复杂度是多少?

Time 当极限在循环内变化时,该算法的时间复杂度是多少?,time,time-complexity,big-o,Time,Time Complexity,Big O,在不清楚循环迭代多少次的情况下,如何计算该算法的时间复杂度或big-O cin >> n; int i = 0; for (int j=1; i <= n; j++) { i += j; } cin>>n; int i=0; 对于(int j=1;我欣赏j中的序列如下所示: 1 + 2 + 3 + 4 + ... + n (not the n in your question) 该系列的总和由高斯公式给出: n * (n + 1) / 2 这意味着总和变化为n^2

在不清楚循环迭代多少次的情况下,如何计算该算法的时间复杂度或big-O

cin >> n;
int i = 0;
for (int j=1; i <= n; j++) {
    i += j;
}
cin>>n;
int i=0;

对于(int j=1;我欣赏
j
中的序列如下所示:

1 + 2 + 3 + 4 + ... + n (not the n in your question)
该系列的总和由高斯公式给出:

n * (n + 1) / 2
这意味着总和变化为
n^2
,其中
n
是循环中的项数或步数。因此,循环应变化为:

O(sqrt(n))
其中now
n
这里是循环代码中的
n
,即循环的上限