這題偏簡單
目的是從 m * n 的二維陣列中找到 最小下落總和
下落的路徑只能有三種選擇(向左偏移、垂直向下、向右偏移)
我們定義一個 1 * n 的 dp 陣列
每個陣列點的意義代表著最後落在該點的最小下落總和
每次計算第 j 個落點之狀態都需要比較其前三個狀態 j - 1、j、j + 1
還要稍微留意兩件事
undefined
使 Math.min
計算爆炸算出 NaN
,我們用 Infinity
迴避取不到陣列之值時所造成的計算錯誤。時間複雜度為 O( m * n )
空間複雜度為 O( n )
我覺得已經是 masterpiece 了
有更猛的解法拜託教一下
Leetcode
JavaScript