你能解释一下O(n ^ 2 * log n)的样子吗?我理解 O(n * log n):
HandlerMethodArgumentResolver
当外循环从1运行到n是O(n)并且内循环每个外循环重复log(n)次,例如j * = 2.此外,我确实理解 O(n ^ 2)< / strong>确实(性能与输入数据大小的平方成正比例如)
HandlerMethodArgumentResolver
但 O(n ^ 2 * log n)是什么?你能举个例子吗?
答案 0 :(得分:2)
你只需要在外面添加一个for循环。这使得 O(n ^ 2 * log n)因为您重复 O(n * log n) n次。
{{1}}
答案 1 :(得分:1)
for(i=0; i<n; i++)
{
for (int ij = 0; ij < n; ++ik) {
for (j=0; j < ij; j *= 2)
{
s=s+i*j;
}
}
s=s+1
}
这样想:
n
中的每个元素,因此我的复杂性为n
ij
n
次,我的复杂性变为n*n
logn
个元素的logaritmic遍历。但是每个logaritmic遍历都比先前的循环执行n*n
次,因此变为n*n*logn