【发布时间】:2016-04-06 15:28:21
【问题描述】:
int find_c(int n)
int i,j,c
for(i=1; i < 2*n; i=i*3)
for(j=400; j > 1; j--)
c++
for(i=c; i > 0; i--)
if(even(i/3))
for(j=n; j < n*n; j++)
c++
else
for(j=1; j < 900; j=j*3)
c++
return c
我有这个用 java 编写的算法,我需要在最坏的情况下根据输入参数 n 找到它的复杂性。我可以理解这个过程的基础知识,其中每个循环都必须单独查看。这个算法的复杂度应该是 n2 log n 但我不明白它是如何计算的。 有人可以向我解释一下吗?
【问题讨论】:
标签: algorithm time-complexity computer-science