そして、最小経路(47インタビューの質問:ギフトの最大値)
タイトル説明
m×n個のグリッドの非負整数与えられ、下左から右へ、パスの最小数の合計ようにからのパスを見つけます。
注意:あなただけの1つのステップダウンまたは右に移動することができます。
例:
入力
:[[1,3,1]、
[1,5,1]、
[4,2,1]]
出力:7の
説明:パス1→3→1→1→1の最小和からです。
アルゴリズム
次のように動的プログラミングは、状態遷移式は、
$ DP [I] [J] = MAX(DP [1-I]、[J]、DP [I] [J-1])+ NUM [I] [J] $
実現
1 |
クラス {公共のint minPathSum (INT [] []グリッド) {場合(グリッド[ 0 ] .LENGTH == 0)戻り0 ; INT、M = grid.length、N =グリッド[ 0 ] .LENGTH。INT [] [] DP =新しいINT [M] [N]。 DP [ 0 ] [ 0 ] =グリッド[ 0 ] [ 0 ]。用( INT J = 1、J <N; J ++) DP [ 0 ] [j]はDPを= [ 0 ] [J- 1 |
オリジナル:大列 ギフトの最大値:47のインタビューの質問