排序时间复杂性

时间:2012-03-27 15:42:08

标签: algorithm complexity-theory

鉴于以下复杂性列表:

n^(log log(n) )  ;2^n  ;3^n  ;n! ;  n^3  ;1/n  ;(n+1)!  ;  4^log(n)   ;n^2  

n^log(n)   ;log(n!)  ;nln(n)  ;  log(2^n )=nlog2 ;(log(2) )^n  ;5n^2+6  ;  n^log(n!) 

我需要按类对它们进行排序。

我按照以下顺序对其中一部分进行了排序,但我仍然缺少一些:

(n+1)!  
n!
3^n
2^n
(3/2)^n
(log(n))^log(n) =n^log(log(n) ) 
n^3
n^2 = 4*log(n) = 4^log(n) 
5n^2+6 = Θ(n^2 )
log(n!) = Θ(n*log(n))
nlog(2) = log(2^n )

我需要在哪里完成剩下的工作:

n^log(n)  ;  n*ln(n) ; (log(2))^n ; n^[log(n!)] ; 1/n ; 

而且,我怎样才能将它们划分为普通类?

我很感激任何帮助

问候

2 个答案:

答案 0 :(得分:0)

到目前为止,你做得很好。由于这是一个家庭作业,我不会给出一个确切的答案,但只提示你缺少的那些:

  • n^log(n):这比(log(n))^(log(n))增长得快,但不如指数快。您可以通过将这三个表达式的log进行比较来确认这一点。

  • n*ln(n)ln(n)ln(10)log(n)。通常,在基数c中记录a,是基数b中的log a乘以基数c中的log b。

  • (log(2))^n:这是基数为log(2)的指数,为~0.3。这几乎是(3.333 ^ -n),呈指数下降。

  • n^[log(n!)]log(n!)O(nlog(n))。这意味着n^(log(n!))O(n^n * n^log(n))

  • 1/n:这是n^(-1),其值逐渐减少。

答案 1 :(得分:0)

我的最终答案:

n^log(n!) 
(n+1)!  
n!
3^n
2^n
(3/2)^n
n^log(n) 
(log(n) )^log(n) =n^log(log(n) ) 
n^3
n^2=4 log(n)=4^log(n)
5n^2+6=Θ(n^2 )
log(n!)=Θ(nlog(n))
n⋅ln(n)
nlog(2)=log(2^n )
(log(2))^n≈(0.3)^n
1/n=n^(-1)
你怎么看?