15.3-1
執行recursive-matrix-chain
更高效一點。
第15.2節指出列舉所有可能的括號化方案是 ω(
4n/n
3/2)
。下面證明recursive-matrix-chain
是 o(
n3n−
1)。
書中的本節證明了: t(
n)=o
(1)+
∑k=1
n−1(
t(k)
+t(n
−k)+
o(1)
) 我們證明存在
c 使得 t(
n)≤c
+∑k=
1n−1
(t(k
)+t(
n−k)
+c)=
2∑i=
1n−1
t(i)
+cn使用替換法證明 t(
n)=o
(n3n
−1) 。 t(
1)=1
≤c,對 n≥
2 有: t(
n)≤2
∑i=1
n−1t
(i)+
cn≤2
∑i=1
n−1c
i3i−
1+cn
≤c⋅(
2∑i=
1n−1
i3i−
1+n)
=c⋅(
2⋅(n
3n−1
3−1+
1−3n
(3−1
)2)+
n)=c
n3n−
1+c⋅
(1−3
n2+n
)=cn
3n−1
+c2(
2n+1
−3n)
≤cn3
n−1
所以recursive-matrix-chain
更高效。
注釋:f(x
)=∑i
=1n−
1xi,
對f(x
)求導得
到:∑i
=1n−
1ixi
−1=n
xn−1
x−1+
1−xn
(x−1
)215.3-2
遞迴樹略,無效的原因是沒有重疊子問題。
15.3-3
具有最優子結構性質。假設 ai
j 是最優解,一定存在乙個
k 使 ai
k,ak
+1,j
都是最大化。用剪下-貼上方法可以證明。
15.3-4
舉例為 p0
=100,p
1=100,p2
=5,p
3=10,
p4=1
分別表示 a1
,a2,
a3,a
4 按教授的意思選擇 k=
2 有 (a
1a2)
(a3a
4),總共 p0
⋅p1⋅
p2+p
2⋅p3
⋅p4+
p0⋅p
2⋅p4
=51000
實際存在 a1
((a2
a3)a
4),總共 p0
⋅p1⋅
p4+p
1⋅p2
⋅p3+
p1⋅p
2⋅p4
=15500
15.3-5
給出乙個長度為 4 的**和限制表。
length i12
34price pi
1520
3336
limit li21
11若沒有限制表,長度為 4 的切割方案是 4 個長度為 1 的總價是 60。
現在只能選擇長度分別是 1,1,2 總價是 50 的切割方案,原因是在長度為 2 的子問題尋找最優解時不能繼續切割成長度為 1,1 的方案。
15.3-6
首先假設在一次兌換中不能重複兌換某一種貨幣,比如兌換序列為 i→
j→i→
j...
。這個假設的原因是若 ri
j>1/
rji ,這樣銀行就要倒閉了。
當對任意
k 都有 ck
=0時有最優子結構性質。假設從貨幣
a 兌換到貨幣
b存在乙個兌換序列 k1
,k2.
..km
,其中 k1
=a,k
m=b ,使得 rk
1k2r
k2k3
...r
km−1
km最大。
利用剪下-貼上方法證明,即假設最優兌換序列是 ki
,ki+
1...
kj,又存在另乙個兌換序列 ki
,k′i
+1..
.k′j
−1,k
j 使得rk
ik′i
+1rk
′i+1
k′i+
2...
rk′j
−1kj
>rk
iki+
1rki
+1ki
+2..
.rkj
−1kj
,我們用ki
,k′i
+1..
.k′j
−1,k
j 序列代替 ki
,ki+
1...
kj得到更優解。 當 c
k 為任意值時,此時不一定具有最優子結構,舉個例子,從貨幣 1 兌換到 貨幣 4,匯率分別是 r12
=2,r
13=2.5,r14
=6,r
23=1.5,r24
=3,r
34=3 ,其中 ri
i=1,
rji=
1/ri
j 。令 c1
=2,c
2=c3
=3。所以兌換貨幣 1 到貨幣 4 有 5 種兌換方法,最優解是序列 1,
2,3,
4 ,最後 1 個單位的貨幣 1 兌換成 6 個單位的貨幣 4。
然後檢查子結構,從貨幣 1 兌換到貨幣 3,最優兌換序列就是 1,
3 。這個兌換序列並不是 1,
2,3 。
動態規劃原理
子問題與原問題具有完全相同的結構 是否可以用結束狀態確定 狀態?不一定具有無後效性?在每個子問題的求解中都利用了它前面的子問題的最優化結果,依次進行,最後乙個子問題所得到的最 優解就是整個問題的最優解 最優化原理 區域性最優解導致全域性最優解 無後效性 dp 首先,請注意無後效性一般是針對問題的分析...
動態規劃原理
運用動態規劃求解最優化問題第一步 若乙個問題的最優解中包含其子問題的最優解,則此問題具有最優解的結構性質。因為使用子問題的最優解構造原問題最優解,所以我們必須確保考察了最優解中用到的所有子問題。如何發掘最優子結構性質 證明問題最優解的第乙個組成部分是做出乙個選擇。例如切割鋼條的第一次切割位置。做出該...
動態規劃原理
動態規劃方法通常用來求解最優化問題 最優子結構 如果乙個問題的最優解包含其子問題的最優解,那麼就稱此問題具有最優子結構性質。某個問題是否適用動態規劃方法,觀察其是否具有最優子結構性質是乙個好的線索 具有最優子結構性質也可能意味著適用貪心策略 實際上,發掘最優子結構性質遵循如下的通用模式 不同問題的最...