forked from algorithm009-class01/algorithm009-class01
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathMinPathSum.java
More file actions
24 lines (22 loc) · 809 Bytes
/
MinPathSum.java
File metadata and controls
24 lines (22 loc) · 809 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
package dynamic;
public class MinPathSum {
public int minPathSum(int[][] grid){
int m = grid.length;
int n = grid[0].length;
for (int i =0;i<m;i++){
for (int j =0;j<n;j++){
if (i==0 && j!=0) grid[i][j] = grid[i][j] + grid[i][j-1];
else if (i != 0 && j == 0) grid[i][j] = grid[i][j]+grid[i-1][j];
else if (i == 0 && j ==0) grid[i][j] = grid[i][j];
else grid[i][j] = Math.min(grid[i][j-1],grid[i-1][j])+grid[i][j];
}
}
return grid[m-1][n-1];
}
public static void main(String[] args) {
int[][] grid = {{1,3,1},{1,5,1},{4,2,1}};
MinPathSum minPathSum = new MinPathSum();
int r = minPathSum.minPathSum(grid);
System.out.println(r);
}
}