一些函数f(n)的大哦升序

时间:2017-03-30 17:26:28

标签: algorithm big-o asymptotic-complexity

将这些函数按照n增长的升序排列:  2 ^((log n)^ 0.5),2 ^ n,2 ^(n / 2),n ^(4/3),n(log n)^ 3,n ^(log n),2 ^(n ^ 2),n!

2 个答案:

答案 0 :(得分:0)

部分答案:2 ^((log n)^ 0.5),2 ^(n / 2),2 ^ n,n!,2 ^(n ^ 2)。

还需要把这些:n ^(4/3),n(log n)^ 3,n ^(log n)

答案 1 :(得分:0)

解决这个问题的方法是在n接近无穷大时查看哪个函数接近无穷大。假设你有一些功能:

f(n) = n!
g(n) = n
h(n) = 3^n

您可以通过评估n接近无穷大的比率来比较任意两个函数。例如:

Lim      f(n) /
n->∞         / g(n)

如果结果大于1,则f(n)渐近大于g(n)。如果结果为1,则它们渐近相同。如果结果小于1,则f(n)渐近地小于g(n)

您可能会发现有些内容很容易解决,例如f(n)g(n),您可以简化表达式以获得极限值。

    f(n) /       = n! /    = n (n-1)! /   = (n-1)!
        / g(n)       / n             / n

n的限制为无穷大,此表达式为无穷大,这意味着f(n)渐近大于g(n)

其他表达方式并不那么简单。如果评估限制为您提供了不确定形式,则需要使用L'Hôpital's rule

Lim      g(n) /        =  Lim    n /     =  ∞ /
n->∞         / h(n)       n->∞    / 3^n      / ∞

根据L'Hôpital的规则,我们可以通过替换g'(n)h'(n)来评估限额。

Lim      g'(n) /         =  Lim    1 /           =  1 /
n->∞          / h'(n)       n->∞    / 3^n ln(3)      / ∞

此限制显然小于1,因此我们可以说g(n)渐近地小于h(n)