a. 利用主方法可得,t(n)=θ(n的log3
4次方)
b. n/f(n)=lgn,不能應用主方法
共log3
n+1層,每層代價n/lg
n/(3
的i次方),最後一層共n個θ(1)的結點,代價為θ(n)
t(n)=∑n/lg
n/(3
的i次方)+θ(n)
<∑n/lgn+θ(n)
=n*log3
2+θ(n)
=o(n)
又因為t(n)最後一層代價為θ(n),所以t(n)=ω(n)
綜上,t(n)=θ(n)
c. 利用主方法可得,t(n)=θ(n5/2)
d. 利用主方法可得,t(n)=θ(n)
e. n/f(n)=lgn,不能應用主方法
共lgn+1層,每層代價n/lg
n/(2
的i次方),最後一層共n個θ(1)的結點,代價為θ(n)
t(n)=∑n/lg
n/(2
的i次方)+θ(n)
<∑n/lgn+θ(n)
=o(n)
又因為t(n)最後一層代價為θ(n),所以t(n)=ω(n)
綜上,t(n)=θ(n)
f. 遞迴樹分為最長路徑lgn+1和最短路徑1/3*lgn+1
根據最長路徑,t(n)=o(n)
又因為t(n)>=n,所以t(n)=θ(n)
g. 遞迴樹共n層,每層代價1/(n-i)
t(n)=∑1/(n-i)=lnn+c=θ(lgn)
h. t(n)=∑lg(n-i)=lg(n!)=θ(nlgn)
i. t(n)=∑1/lg(n-i) 根據積分法,t(n)=θ(n/lgn)
j. 遞迴樹共lglgn層,每層代價n,則t(n)=θ(nlglgn)
演算法導論 思考題 8 4
寫一下我的思路,大概是對的,詳細證明不出來。設藍色水壺為a,紅色為b 先取乙個a1,對所有的b做一次比較,可以將b分為兩個部分,一部分大於a1,一部分小於a1 再取乙個a2,將b分為三個部分 再取a3,將b分為四個部分 假設現在b被分成了k個部分,b1,b2,b3.bk,每次取ai,都從b集合的一半...
演算法導論 思考題 4 5
這題實在沒什麼思路,網上找了一下答案。如果一開始就能夠確定好的晶元多於壞的,則可以保證每輪檢測結束好的晶元都多於壞的,一直到最後如果剩2塊晶元,則兩塊肯定都是好的 剩3塊晶元就再檢測一次,如果結果都是好的,就隨意取一片必定是好的 如果結果都是壞的,則剩下的那塊肯定是好的。來證明一下上面的結論 設有x...
演算法導論 思考題15 7 解碼演算法
先解釋一下問題,解碼存在乙個困難為同乙個字可能被譯為它的同音字,比如語音輸入 我的手 的 可能對應於 的地得 需要結合語境判斷。ps.我看有些答案說這是 viterbi 演算法,可以自行了解。問題a,解法是乙個帶備忘錄的動態規劃 過程類似於深度遍歷 偽 如下 input v 圖的節點列表 sigma...