以下代码的时间复杂度是多少?
void fun(int n)
{
int j = 1, i = 0;
while (i < n)
{
// Some O(1) task
i = i + j;
j++;
}
}
循环变量“ i”增加1、2、3、4…,直到i变得大于或等于n。
经过x次迭代后,i的值为x(x + 1)/ 2。因此,如果循环运行x次,则x(x + 1)/ 2
📅  最后修改于: 2021-05-08 18:58:09             🧑  作者: Mango
以下代码的时间复杂度是多少?
void fun(int n)
{
int j = 1, i = 0;
while (i < n)
{
// Some O(1) task
i = i + j;
j++;
}
}
循环变量“ i”增加1、2、3、4…,直到i变得大于或等于n。
经过x次迭代后,i的值为x(x + 1)/ 2。因此,如果循环运行x次,则x(x + 1)/ 2