矩陣的最小路徑和

2022-02-08 20:17:06 字數 1000 閱讀 1243

給你乙個陣列,求從[0,0]位置到[n-1,m-1]的最短路徑。

陣列如圖所示:13

5982

3450

6188

40路徑1→3→1→0→6→1→0是所有路徑中路徑和最小的,所以返回12

**:

public

class

minpathsum

int row =matrix.length;

int col = matrix[0].length;

int dp = new

int[row][col];

//初始化陣列

dp[0][0] = matrix[0][0];

for(int i=1; i)

for(int i=1; i)

for(int i=1; i)

}return dp[row-1][col-1];

}//時間複雜度o(m*n),空間複雜度o(min(m*n))

public

static

int minpathsum2(int

matrix)

int row =matrix.length;

int col = matrix[0].length;

//壓縮dp陣列為一維陣列,運用翻滾的的方法逐行往下翻滾

int dp = new

int[col];

//初始化陣列

dp[0] = matrix[0][0];

for(int i=1; i)

for(int i=1; i)

}return dp[col-1];

}public

static

void

main(string args) ,,,};

system.out.println(minpathsum1(matrix));

system.out.println(minpathsum2(matrix));

}}

矩陣的最小路徑和

準備校招的!這些是一本書的筆記 程式設計師 面試指南 it名企演算法與資料結構題目最優解 左程雲 給定乙個矩陣m,從左上角開始每次只能向右或者向下走,最後到達右下角的位置,路徑上所有的數字累加起來就是路徑和,返回所有的路徑中最小的路徑和 舉例 如果給定的m如下 135 9 813 4 506 1 8...

矩陣的最小路徑和

給定乙個矩陣m,從左上角開始每次只能向右或者向下走,最後到達右下角的位置,路徑上所有的數字累加起來就是路徑和,返回所有的路徑中最小的路徑和。方法一 遞迴 coding utf 8 defsolution m,l n l m 0 0 if len m 1 and len m 0 1 return l ...

矩陣的最小路徑和

題目 給定乙個矩陣m,從左上角開始每次只能向右或者向下走,最後達到右下角的位置,路徑上所有的數字累加起來就是路徑和,返回所有的路徑中最小的路徑和。舉例 給定的m如下 1 3 5 9 8 1 3 4 5 0 6 1 8 8 4 0 路徑1,3,1,0,6,1,0是所有路徑中路徑和最小的,所以返回12。...