給定一個序列 有n個有序且各不相同的鍵, 集合
表示在K中成功的搜索的概率; 為n+1 個不同的啞鍵,表示所有在和之間的值, 表示不成功的搜索的概率. 創(chuàng)建二叉搜索樹, 使得其期望搜索花費最小。
一個例子
最優(yōu)子結(jié)構(gòu)
如果一棵最優(yōu)二叉搜索樹T的子樹T’含有鍵那么這個子樹T’肯定是子問題鍵和啞
鍵的最優(yōu)解。 (利用反證法證明)
重疊子問題解決思路: 遞歸
解釋為什么要加w(i,r-1)與w(r+1,j)
當一顆子樹成為結(jié)點的子樹時,由于每個結(jié)點的深度都增加了1,這顆子樹的期望搜索代價的增加值應(yīng)該為所有概率之和。
這個增加值才能體現(xiàn)該結(jié)點在搜索時對應(yīng)的深度代價
計算最優(yōu)費用(與計算矩陣李安乘法問題類似)
文章來源:http://www.zghlxwxcb.cn/news/detail-806960.html
舉例使用遞歸解結(jié)構(gòu)
文章來源地址http://www.zghlxwxcb.cn/news/detail-806960.html
到了這里,關(guān)于動態(tài)規(guī)劃:最優(yōu)二叉搜索樹的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!