int k = n;
while (k > 0)
{
for (int j = 0; j < n; j++)
{
System.out.println(“Inside the inner loop”);
}
k = k / 2;
}
嗨,对于这个问题,我提出了两个答案,即
O(N ^ 2 Log N)OR O(n * N / 2)= O(N 2/2)。我不确定是否有相同或不同?我的讲师也提到选择大写。因此,对于这个问题,有一个O(N ^ 2)和一个O(Log N)。所以根据我的讲师,答案应该是O(N ^ 2)?请帮忙。感谢。
答案 0 :(得分:2)
答案是O(N * log N)
由于您将半身K
除以外部循环得到O(log N)
。因为在每次迭代中,您迭代N
次,然后它将是O(N * log N)
。