Function 确定while循环中函数的Big-O

Function 确定while循环中函数的Big-O,function,while-loop,big-o,time-complexity,pseudocode,Function,While Loop,Big O,Time Complexity,Pseudocode,对于循环中此类函数aFunction()的大o值为o(nlog(n))的循环,如何确定最坏情况下的时间复杂度 i ← 0 while (i < n) aFunction(...) i ← i+1 done i← 0 而(i 或>代码> N< /代码>?您的代码示例太薄这似乎是离题的,因为它涉及算法的时间复杂性,并且不涉及实际代码。考虑CS.STACKExchange .com,而不是这么简单。每次调用都需要O(i log i)。因此,为了确保你是正确的,我们必须将所有的i l

对于循环中此类函数aFunction()的大o值为o(nlog(n))的循环,如何确定最坏情况下的时间复杂度

i ← 0
while (i < n)
   aFunction(...)
   i ← i+1
done
i← 0
而(i
想想这里总共做了多少工作。每次调用
a函数
都需要时间O(n log n),您总共调用了n次。总的来说,这使得总功为O(n2 logn)


希望这有帮助

想想这里总共做了多少工作。每次调用
a函数
都需要时间O(n log n),您总共调用了n次。总的来说,这使得总功为O(n2 logn)


希望这有帮助

参数是什么,它们是否依赖于
i
n
之类的内容?您的代码示例太薄这似乎是离题的,因为它涉及算法的时间复杂性,并且不涉及实际代码。考虑CS.STACKExchange .COM。参数是什么,它们是否依赖于<代码> > <代码>或>代码> N< /代码>?您的代码示例太薄这似乎是离题的,因为它涉及算法的时间复杂性,并且不涉及实际代码。考虑CS.STACKExchange .com,而不是这么简单。每次调用都需要
O(i log i)
。因此,为了确保你是正确的,我们必须将所有的
i log i
相加,从i=1到n。(如果我正确理解OP的问题)@Everv0id从提供的伪代码中,我无法判断在每次迭代中是在
i
还是在
n
上调用
a函数
。我假设它是
n
,但你是对的,如果每次迭代都是
I
,那么这里需要更多的数学运算。不是这么简单。每次调用都需要
O(i log i)
。因此,为了确保你是正确的,我们必须将所有的
i log i
相加,从i=1到n。(如果我正确理解OP的问题)@Everv0id从提供的伪代码中,我无法判断在每次迭代中是在
i
还是在
n
上调用
a函数
。我假设它是
n
,但你是对的,如果每次迭代都是
I
,那么这里需要更多的数学运算。