leetcode 064. Minimum Path Sum
来源:互联网 发布:js修改div背景颜色 编辑:程序博客网 时间:2024/04/30 20:16
/* * leetcode 064. Minimum Path Sum * dp问题 dp(i,j) = min(dp(i,j-1), dp(i-1,j)) *解决思路:用一个二维数组记录从起点到每一个点的最短路径。*/#include <iostream>#include <vector>#include <algorithm>using namespace std;class Solution {public: int minPathSum(vector<vector<int>>& grid) { if (grid.size() == 0 || grid[0].size() == 0) return 0; int row = grid.size(); int col = grid[0].size(); vector<vector<int>> result(grid); //对于边界,单独计算 for (int i = 1; i < row; ++i) result[i][0] += result[i - 1][0]; for (int j = 1; j < col; ++j) result[0][j] += result[0][j-1]; for (int i = 1; i < row; ++i) { for (int j = 1; j < col; ++j) { result[i][j] += min(result[i - 1][j], result[i][j - 1]); } } //row-1,col-1即为要求的最短路径 return result[row - 1][col - 1]; }};void TEST_SOLUTION(){ Solution sol; vector<vector<int>> grid{ {5,1,2,3,6}, {7, 8, 5, 3, 2}, {1,3,5,8,2}, {4,3,2,6,5} }; cout << sol.minPathSum(grid) << endl;}int main(){ TEST_SOLUTION(); return 0;}
0 0
- leetcode 064. Minimum Path Sum
- 【LeetCode】 064. Minimum Path Sum
- LeetCode: Minimum Path Sum
- LeetCode Minimum Path Sum
- LeetCode : Minimum Path Sum
- [Leetcode] Minimum Path Sum
- [LeetCode] Minimum Path Sum
- [Leetcode] Minimum Path Sum
- [LeetCode]Minimum Path Sum
- [leetcode]Minimum Path Sum
- LeetCode-Minimum Path Sum
- [leetcode] Minimum Path Sum
- LeetCode - Minimum Path Sum
- LeetCode:Minimum Path Sum
- leetcode minimum path sum
- 【leetcode】Minimum Path Sum
- 【LeetCode】Minimum Path Sum
- Leetcode: Minimum Path Sum
- SimpleAdapter
- http://www.chengxuyuan.com/post/1838.html?ref=myread
- leetcode 20. Valid Parentheses
- linux下源码安装cmake
- SQL大数据量查询的优化
- leetcode 064. Minimum Path Sum
- UE4之Behavior Tree介绍
- Linux学习---shell编程(11-条件判断式)
- leetcode 334 ----字符串翻转
- Leetcode 37 Sudoku Solver 深搜基础题+位运算
- 对于汉诺塔递归的实现和步骤跟踪
- preempt_count
- Linux学习---shell编程(12-if语句)
- 通用的socket地址