Algorithm 排序时间复杂性
鉴于以下复杂性列表:Algorithm 排序时间复杂性,algorithm,complexity-theory,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))^l
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 ;
?
那么,我如何将它们划分为普通类呢
我非常感谢你的帮助
问候你到目前为止做得很好。由于这是一个家庭作业,我不会给出确切的答案,但只会提示您缺少的内容:
:它的增长速度比n^log(n)
快,但比不上指数。您可以通过比较这三个表达式的(log(n))^(log(n))
s来确认这一点log
:n*ln(n)
是ln(n)
。一般来说,以c为基础的日志a是以b为基础的日志a乘以以c为基础的日志bln(10)日志(n)
:这是一个指数,其基数(log(2))^n
为~0.3。这几乎是(3.333^-n),呈指数下降log(2)
:n^[log(n!)]
是log(n!)
。这意味着O(nlog(n))
是n^(log(n!))
O(n^n*n^log(n))
:这是1/n
,它的值缓慢减小n^(-1)
- 我的最终答案:
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)
你觉得怎么样 离题:这可能应该是开着的。我不能告诉你如何作为家庭作业问题来回答这个问题。这可能取决于你的导师想要什么。然而,令人遗憾的是,尽管计算机科学经常未能认识到这一点,n!为无穷阶,对数(n)为零阶。L'Hospital的规则管辖。(我真的不认为这个评论对你的家庭作业有帮助,因为这个问题的措辞表明你的老师不同意这个评论的前提。)@thb,有许多比
n更复杂的事情代码>和许多低于log(n)
。称它们为无限级和零级对我来说没有意义。你有什么推荐信吗?为什么不谈这个话题?时间复杂性是复杂性中一个非常重要的因素,不是吗?@Shahbaz:没有参考,对不起。对齐:如果函数f(z)/z^(m-epsilon)发散且f(z)/z^(m+epsilon)收敛于大z,则函数f(z)具有m阶。除了在软件世界,函数的顺序是数字,而不是讨论。因此,O(log(n))只是表示O(1)的一种模糊方式。软件评测的现实事实上反映了这一点,尽管计算机科学倾向于否认这一点。考虑具有n=10亿个元素的自平衡二叉树的性能,以了解我的意思。但是,像吉诃德一样,我在这方面倾向于风车。公司。sci。我已经回答了我的问题,如果你能给我一个反馈,我将不胜感激……:)4^(log(n))
是n^(log(4))
如果你的日志是以2为基数的,那将是n^2
,但是你是如何得到4*log(n)
与之相等的?!此外,如果您的日志以2为基数,则log(2)
将为1,因此log(2)^n
将仅为1。