2100,
(3/2)n,(2/3)n, nn
,n0.5 , n! ,2n ,lgn ,nlgn,
n(3/2)
解题策略:常见的时间复杂度按数量级递增排列,依次为:
(《1》先将题中的函数分成如下几类:)
常数阶
0(1)
2100
对数阶
0(log2n) lgn
线性阶
0(n)
线性对数阶
0(nlog2n)
平方阶
0(n2)
立方阶
0(n3)
k次方阶
0(nk)
n0.5、n(3/2)
指数阶
0(2n) nlgn、(3/2)n、2n、
n!、 nn
<2>注意:(2/3)^n由于底数小于1,所以是一个递减函数,其数量级应小于常数阶。
所以根据以上分析按增长率由小至大的顺序可排列如下:
(2/3)n < 2100 < lgn < n0.5 < n(3/2) < nlgn < (3/2)n < 2n < n! < nn
(2/3)n < 2100 < lgn < n0.5 < n(3/2) < nlgn < (3/2)n < 2n < n! < nn
后一篇:比较两个同数量级算法的优劣