資料內(nèi)容:
最小路徑和問題
問題描述
給定一個(gè)包含非負(fù)整數(shù)的 m x n 網(wǎng)格 grid ,找到一條從左上角到右下角的路徑,使得路徑上的數(shù)字總和
為最小。每次只能向下或者向右移動(dòng)一步。
示例
輸入: grid = [
[1,3,1],
[1,5,1],
[4,2,1]
]
輸出: 7
解釋: 因?yàn)槁窂?1→3→1→1→1 的總和最小。
動(dòng)態(tài)規(guī)劃解法
這個(gè)問題可以用動(dòng)態(tài)規(guī)劃來(lái)解決。我們定義一個(gè)二維數(shù)組 dp ,其中 dp[i][j] 表示從左上角到網(wǎng)格 (i,
j) 位置的最小路徑和。狀態(tài)轉(zhuǎn)移方程為:
dp[i][j] = min(dp[i-1][j], dp[i][j-1]) + grid[i][j]