動(dòng)態(tài)規(guī)劃隨筆

DP寫(xiě)程序的循環(huán)怎么開(kāi)始:
看初始狀態(tài)是是什么,再看狀態(tài)轉(zhuǎn)移方程是什么依賴順序
比如LC375 初始狀態(tài) dp[i][i] = 0 轉(zhuǎn)移方程dp[i][j] = min (i<=k<=j) { k + max(dp[i][k-1], dp[k+1][j]) }
那么明顯是由初始狀態(tài)看是從某一點(diǎn)向外擴(kuò)展,由轉(zhuǎn)移方程看是從低到高,所以循環(huán)為:
for (int i = 1; l < n; l++)
for (int i= 1;i <= n-l; i++) {
int j = i+l;
dp[i][j] = Integer.MAX_VALUE;
for (int k = i; k <= j; k++)
dp[i][j] = Math.min(dp[i][j], k + Math.max(dp[i][k - 1], dp[k + 1][j]));
}
return dp[1][n];
}

先(1,2)(2,3)。。。。(n,n+1) 再(1,3)(2,4)。。。。這樣拓展

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 動(dòng)態(tài)規(guī)劃(Dynamic Programming) 本文包括: 動(dòng)態(tài)規(guī)劃定義 狀態(tài)轉(zhuǎn)移方程 動(dòng)態(tài)規(guī)劃算法步驟 最長(zhǎng)...
    廖少少閱讀 3,669評(píng)論 0 18
  • 背景 一年多以前我在知乎上答了有關(guān)LeetCode的問(wèn)題, 分享了一些自己做題目的經(jīng)驗(yàn)。 張土汪:刷leetcod...
    土汪閱讀 12,936評(píng)論 0 33
  • 回溯算法 回溯法:也稱為試探法,它并不考慮問(wèn)題規(guī)模的大小,而是從問(wèn)題的最明顯的最小規(guī)模開(kāi)始逐步求解出可能的答案,并...
    fredal閱讀 14,028評(píng)論 0 89
  • 樹(shù)形動(dòng)態(tài)規(guī)劃,顧名思義就是樹(shù)+DP,先分別回顧一下基本內(nèi)容吧:動(dòng)態(tài)規(guī)劃:?jiǎn)栴}可以分解成若干相互聯(lián)系的階段,在每一個(gè)...
    Mr_chong閱讀 1,616評(píng)論 0 2
  • 1. 分層的優(yōu)勢(shì) 利用這樣分層的體系結(jié)構(gòu),開(kāi)發(fā)者可以討論一個(gè)定義良好的、大而復(fù)雜的系統(tǒng)的特定部分。這種簡(jiǎn)化本身由于...
    溫柔虎閱讀 600評(píng)論 0 1

友情鏈接更多精彩內(nèi)容