C++ 以下代码段的时间复杂度是否为O(n^2)?

C++ 以下代码段的时间复杂度是否为O(n^2)?,c++,time-complexity,C++,Time Complexity,我想知道以下代码片段的时间复杂度是否为O(n^2): 类解决方案{ 公众: 整数平方(整数n){ 如果(n外环是O(n) 内部循环是O(sqrt(i)) 总额为: 1 + sqrt(2) + ... + sqrt(N) 它大于O(N),但小于O(N^2) 如果不对上述总和进行非常精确的计算,我会说,它接近于O(N*sqrt(N)) 更新 自年月日起,上述金额为: C1 + (2.0/3)*N*SQRT(N) + (1.0/2)*SQRT(N) + .... 外环为O(N) 内部循环是O(sq

我想知道以下代码片段的时间复杂度是否为
O(n^2)

类解决方案{
公众:
整数平方(整数n){
如果(n外环是
O(n)

内部循环是
O(sqrt(i))

总额为:

1 + sqrt(2) + ... + sqrt(N)
它大于
O(N)
,但小于
O(N^2)

如果不对上述总和进行非常精确的计算,我会说,它接近于O(N*sqrt(N))

更新

自年月日起,上述金额为:

C1 + (2.0/3)*N*SQRT(N) + (1.0/2)*SQRT(N) + ....
外环为
O(N)

内部循环是
O(sqrt(i))

总额为:

1 + sqrt(2) + ... + sqrt(N)
它大于
O(N)
,但小于
O(N^2)

如果不对上述总和进行非常精确的计算,我会说,它接近于O(N*sqrt(N))

更新

自年月日起,上述金额为:

C1 + (2.0/3)*N*SQRT(N) + (1.0/2)*SQRT(N) + ....

我想说复杂性是
O(n√n) 
@PatrickRoberts,两个问题-
i
。如何
O(n√n) 
?;和
ii
。如何插入平方根符号?外循环是
O(n)
,内循环是
O(0.5√N) 
。由于没有提前退出任一循环的条件,您只需将它们相乘即可得到总复杂度,并删除系数,因为它们不属于big-O。而
√是
ALT+V
我想说复杂性是
O(n√n) 
@PatrickRoberts,两个问题-
i
。如何
O(n√n) 
?;和
ii
。如何插入平方根符号?外循环是
O(n)
,内循环是
O(0.5√N) 
。由于没有提前退出任一循环的条件,您只需将它们相乘即可得到总复杂度,并删除系数,因为它们不属于big-O。而
√是
ALT+V
哇!我甚至都没想过。你能指出
sqrt(i)
是怎么回事吗?它不是“接近”,它是。正如
N->∞,则函数的计时按比例增加到
N√N
同样,这意味着它在技术上也是
O(N^2)
,和
O(N^3)
,和
O(2^N)
,等等@UmedhSinghBundela,
(j*j哇!甚至没有想过。你能指出
sqrt(i)
?它不是“接近”,而是∞,则函数的计时按比例增加到
N√N
同样,这意味着它在技术上也是
O(N^2)
,和
O(N^3)
,和
O(2^N)
,等等