[问题] 几题BigO证明还有观念疑问

楼主: Lizstlin (Lizst)   2010-10-05 01:24:12
(因为是第一次在这边PO文, 不大确定能否问这样的问题, 如果不行就麻烦版主删了,
不好意思喔 ^^")
因为老师上课没讲什么证明范例, 书上也写得少
自己找题目写遇到不少瓶颈, 我知道基本观念是
f(n) = O(n) iff there exist positive constants c and n0 s.t
f(n) <= c*g(n) for all n which n >= n0
那个c 在证明过程中可以随便假设吗?
因为总觉得要有一定范围才可以, 像下面的证明我设1就不知道怎么继续下去
证明题如下:
show that n! = O(n^n)
show that n^(2^n) + 6*2(^n) = θ(2^(2^n))
show that n^2 * logn = θ(n^2) is incorrect
希望有大大不吝指教, 大致上提点我该如何下手, 谢谢 (拜)
如果不懂我再来问各位大大 ^^"
方才自己试了一下第一题, 不知道这样对不对?
n! <= c*(n^n)
移项得 c* n[n^(n-1) - (n-1)!] >= 0
由 [n^(n-1) - (n-1)!] 得 n >= 1, 而 c >= 1
所以 n! = O(n^n) for all n which n>=1, and c>=1
这样的感觉还是很像c 还有 n0 是推敲出来的 ~"~
作者: hilorrk (Cary)   0000-00-00 00:00:00
exist和for all不一样...你随便带一个进去当然不一定对也许你可以从"找出一个c"符合条件的方向去想像是第一题 1*2*...*n和n*n*...*n 你找不找的到c?
作者: nowar100 (抛砖引玉)   0000-00-00 00:00:00
是拿来证明到最后,我们可以得到结论存在这个c而不是先假设一个c去证吧
楼主: Lizstlin (Lizst)   0000-00-00 00:00:00
那么, 可以提示(或是从中解一题当范例)讲解给我吗? 谢谢比方第一题, 我试过左右除以n, 但是c 还是无法独立求出
作者: cooper6334 (库波)   0000-00-00 00:00:00
不是就随便凑一个c跟n0,只要有合就ok了吗?

Links booklink

Contact Us: admin [ a t ] ucptt.com