2011-04-19 29 views
1

我有以下问题:关于大样张问题

下面的陈述是真是假?

所有日志到基座2

log2n是O的成员(的log(n))

我尝试:

  • log2n - clogn < = 0
  • LOG2 + logn - clogn < = 0
  • 1 + logn(1-c)< = 0

现在,纠正我,如果我错了,但我必须找到N(变量)和C(恒定),它要么证明或反驳这一数值...

一般来说,这似乎是真的:

选择

n0 = 2, c = 3 -> TRUE 
n1 = 3, c = 3 -> TRUE 
n2 = 4, c = 3 -> TRUE 

因此,声明似乎正不正确,LOGN增加。但是也存在以上陈述永远不会成立的值:

例如,

无论n的值是否增加,选择c = 1的结果都大于零。

所以我很困惑,这是否是真的还是假的....

+0

我也很困惑:-) – Johan 2011-04-19 10:42:12

回答

2

你可以只使用一个事实,即产品的对数的因素对数的总和:

log(2n) = log(2)+log(n) = O(log(n))

+0

好的,这告诉我这是真的。不幸的是我必须使用上面的方法来证明它。我只是困惑为什么某些价值评估是错误的。 – user559142 2011-04-19 10:47:17

+0

@ user559142:你所要做的就是显示条件满足* c *的一个*值(对于所有足够大的'n')。您不必证明(并且通常情况并非如此)该条件适用于* every *'c'。 – NPE 2011-04-19 11:18:50

+0

真的啊!这很容易!非常感谢 – user559142 2011-04-19 11:36:24