[理工] [Algo]Substitution method

看板Grad-ProbAsk作者 (墨)時間9年前 (2015/01/03 21:34), 9年前編輯推噓0(001)
留言1則, 1人參與, 最新討論串1/1
有些遞迴樹類型的題目, 猜出解後,利用substitution method證明時都寫得很卡, 不確定自己寫的夠不夠嚴謹,怕在這種基本題上丟掉分數, 比較大的問題在於取n0時不太知道該怎麼寫, 以下是我的證明過程,麻煩大家幫忙糾正.討論,thx! ex: T(n) = T(n/3)+T(2n/3)+n pf: To prove T(n) = O(nlog n) , i.e. exist positive constant c,n0 s.t. T(n)<=cnlog n,for all n>=n0 T(1) = T(0)+T(0)+1 = 1 <= c.1.log 1不可能找到c使之成立 T(2) = T(0)+T(1)+2 = 3 <= c.2.log 2當c>=2時成立 T(3) = T(1)+T(1)+3 = 5 <= c.3.log 3當c>=2時成立 T(4) = T(1)+T(2)+4 = 8 <= c.4.log 4當c>=2時成立 T(5) = T(1)+T(3)+5 = 11 <= c.5.log 5當c>=2時成立 T(6) = T(2)+T(4)+6 = 17 <= c.6.log 6當c>=2時成立 (這邊先猜n0=6,但還沒算出c值不確定n0是否會變不知道該不該在這寫n0=6) Induction Hypothesis:假設6<=k<n時存在c使得T(k)<=cklog k成立 當k=n時 T(n) = T(n/3)+T(2n/3)+n <= (cn/3)log n/3+(2cn/3)log 2n/3 +n = (cn/3)(log n-log 3)+(2cn/3)(log n-log 3/2)+n = cnlog n + n -(cn/3)log 3 - (2cn/3)log 3/2 <= cnlog n (取c=3) by induction,取n0=6,c=3,T(n) = O(nlog n)得證 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 36.228.109.152 ※ 文章網址: http://www.ptt.cc/bbs/Grad-ProbAsk/M.1420292041.A.0C1.html

01/03 21:58, , 1F
想知道能不能畫樹出來當證明 因爲這種題目分數應該不多
01/03 21:58, 1F
修正n0=2 -> n0=6,因T(n/3)在n<6不成立 ※ 編輯: galapous (36.228.109.152), 01/03/2015 22:34:02
文章代碼(AID): #1Kf-_931 (Grad-ProbAsk)