我有两个功能:
f(n) = n*log(n)
g(n) = n^(1.1) * log(log(log(n)))
我想知道这些功能如何相互比较。据我所知,f(n)总是比g(n)增长得快。换句话说:f(n)inω(g(n))
我假设日志基数为10,但它确实无关紧要,因为可以使用任何基数。我尝试了n和c的许多组合,因为以下关系似乎成立:
f(n) ≥ c g(n) ≥ 0
似乎对我有用的一个组合如下:
c = 0
n = 10^10
在这种情况下:
f(10^10) = (10^10) log(10^10) = (10^10)*(10) = 10^11
c*g(n) = 0 * (10^10)^(1.1) * log(log(log(10^10))
= 0 * (10^11) * log(log(10))
= 0 * (10^11) * log(1)
= 0 * (10^11) * 0 = 0
因此f(n)总是大于g(n),并且关系将是f(n)是ω(n)。
我的理解在这里是否正确?
编辑:进行更正
答案 0 :(得分:0)
首先,坚持你的组合不起作用,因为它无效。当且仅当存在实数f(x)
和正实数O(g(x))
时,x'
函数c
才会f(x)≤cg(x)
x≥x'
1}}适用于所有c=0
。您使用f(x)=Ω(g(x))
,这不是正面的,因此使用它来理解渐近复杂性并不会有所帮助。
但更重要的是,在您的示例中,f(x)=O(g(x))
并非如此。实际上,它实际上是log(n)=O(n^0.1)
。您可以看到这一点,因为nlog(n)=O(n^1.1)
(proof here),nlog(n)=O(n^1.1 log(log(log(n))))
,所以f(x)=O(g(x))
,因此display: flexbox
。