【DP】Minimum Path Sum
来源:互联网 发布:程序员开发工具 编辑:程序博客网 时间:2024/05/18 00:52
Given a m x n grid filled with non-negative numbers, find a path from top left to bottom right which minimizes the sum of all numbers along its path.
Note: You can only move either down or right at any point in time.
解法:D[i][j]保存(0,0)到(i,j)的最小和,对边缘元素要判断public class Solution { public int minPathSum(int[][] grid) { int len1 = grid.length; if(len1 == 0) return 0; int len2 = grid[0].length; if(len2 == 0) return 0; int d[][] = new int[len1][len2]; for(int i=0; i<len1; i++){ for(int j=0; j<len2; j++){ d[i][j] = grid[i][j]; if(i==0 && j==0) continue; if(i==0) d[i][j] += d[i][j-1]; else if(j==0) d[i][j] += d[i-1][j]; else{ if(d[i][j-1] < d[i-1][j]) d[i][j] += d[i][j-1]; else d[i][j] += d[i-1][j]; } } } return d[len1-1][len2-1]; }}
改进:使用滚动数组,减少空间复杂度
public class Solution { public int minPathSum(int[][] grid) { int len1 = grid.length; if(len1 == 0) return 0; int len2 = grid[0].length; if(len2 == 0) return 0; int d[] = new int[len2]; for(int i=0; i<len1; i++){ for(int j=0; j<len2; j++){ if(i==0 && j==0) d[j] = grid[i][j]; else if(i==0) d[j] = d[j-1] + grid[i][j]; else if(j==0) d[j] = d[j] + grid[i][j]; else{ if(d[j-1] < d[j]) d[j] = d[j-1] + grid[i][j]; else d[j] = d[j] + grid[i][j]; } } } return d[len2-1]; }}
0 0
- 【DP】Minimum Path Sum
- Minimum Path Sum DP
- DP Minimum Path Sum
- [DP] Minimum Path Sum
- DP------Minimum Path Sum
- 【Leetcode】Minimum Path Sum (DP)
- [leetcode][DP] Minimum Path Sum
- leetcode---minimum-path-sum---dp
- Leetcode-Minimum Path Sum(dp)
- leetcode -- Minimum Path Sum -- 简单DP
- 64. Minimum Path Sum DP经典问题
- LeetCode OJ-64.Minimum Path Sum(DP)
- LeetCode-64-Minimum Path Sum DP水题
- 64. Minimum Path Sum (dp)
- Leetcode - Dynamic Progr - 64. Minimum Path Sum(BFS+DP)
- leetcode 64. Minimum Path Sum DP动态规划
- DP问题—Leetcode 64. Minimum Path Sum
- LeetCode: Minimum Path Sum
- cocos2d-x CCEditBox使用
- API Levels与Android os_version的对比
- 操作系统中的互斥,同步与死锁
- sql-b表数据插入或更新到a表
- 浅析error LNK2001: unresolved external symbol "public: __thisc...
- 【DP】Minimum Path Sum
- vs2008和SQL Server使用ADO连接方法
- html页面内嵌mp3
- Netfilter的使用和实现
- Deep Learning学习笔记——1
- Asp.net 访问 共享目录
- w3af是一个Web应用程序攻击和检查框架
- 将解决Eclipse中svn的”working copy locked“错误
- 杭电1114 完全背包