119-Minimum Path Sum
来源:互联网 发布:单片机数据总线 编辑:程序博客网 时间:2024/04/27 13:49
-64. Minimum Path Sum
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.
思路:动态规划
(处理边界,第一行和第一列为累积和)
class Solution {public: int minPathSum(vector<vector<int>>& grid) { int row = grid.size(); if(row==0)return 0; int col = grid[0].size(); vector<int> v(col,0); vector<vector<int>> d(row,v); int row_sum =0; for(int i=0;i<col;++i){ row_sum += grid[0][i]; d[0][i] = row_sum; } row_sum =0; for(int i=0;i<row;++i){ row_sum += grid[i][0]; d[i][0] = row_sum; } //动态规划解决,滚动数组 for(int i=1;i<row;++i){ for(int j=1;j<col;++j){ d[i][j] = grid[i][j]+min(d[i-1][j],d[i][j-1]); } } return d[row-1][col-1]; }};
递归版,超时
class Solution {public: int minPathSum(vector<vector<int>>& grid) { int row = grid.size(); if(row==0)return 0; int col = grid[0].size(); vector<vector<int>> d= grid; int row_sum =0; for(int i=0;i<col;++i){ row_sum += grid[0][i]; d[0][i] = row_sum; } row_sum =0; for(int i=0;i<row;++i){ row_sum += grid[i][0]; d[i][0] = row_sum; } return minPathSum_Recursive(grid,row-1,col-1); } int minPathSum_Recursive(vector<vector<int>> &d,int i,int j){ if(i==0||j==0){ return d[i][j]; } else{ int res; res = d[i][j]+min(minPathSum_Recursive(d,i-1,j),minPathSum_Recursive(d,i,j-1)); return res; } } };
0 0
- 119-Minimum Path Sum
- LeetCode: Minimum Path Sum
- LeetCode Minimum Path Sum
- LeetCode : Minimum Path Sum
- [Leetcode] Minimum Path Sum
- Minimum Path Sum
- Minimum Path Sum
- [LeetCode] Minimum Path Sum
- [Leetcode] Minimum Path Sum
- Minimum Path Sum
- [LeetCode]Minimum Path Sum
- Minimum Path Sum
- Minimum Path Sum
- Minimum Path Sum
- Minimum Path Sum
- [leetcode]Minimum Path Sum
- Minimum Path Sum
- LeetCode-Minimum Path Sum
- Java内部类概述
- Firebase初探:身份认证
- 关于thinkphp5.0 rc4.0扩展类库自动与手动加载的问题
- CWPKI0312E
- Spring AOP动态代理原理与实现方式
- 119-Minimum Path Sum
- H5跳转测试
- 1022. Digital Library (30)
- 下载/保存/读取 文件,并转成流输出
- 10.代理
- codeforces AIM Tech Round 3 (Div. 2)D. Recover the String
- Android Studio导入Eclipse项目
- 梦幻国度角色基址查找方法
- Android 自动登录的实现