JasonChang

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理
 1 public class Solution {
 2     public int minPathSum(int[][] grid) {
 3         // IMPORTANT: Please reset any member data you declared, as
 4         // the same Solution instance will be reused for each test case.
 5         int m = grid.length;
 6         int n = grid[0].length;
 7         int[][] result = new int[m][n];
 8         for(int i = 0; i < m; i++)
 9             for(int j = 0; j < n; j++){
10                 if(i - 1 < 0 && j - 1 < 0)
11                     result[0][0] = grid[0][0];
12                 else if(i - 1 < 0)
13                     result[i][j] = result[i][j-1] + grid[i][j];
14                 else if(j - 1 < 0)
15                     result[i][j] = result[i-1][j] + grid[i][j];
16                 else
17                     result[i][j] = Math.min(result[i-1][j], result[i][j-1]) + grid[i][j];
18             }
19         
20         return result[m-1][n-1];
21     }
22 }

 

posted on 2013-11-19 12:03  JasonChang  阅读(246)  评论(0编辑  收藏  举报