Minimum Path Sum
来源:互联网 发布:美国近期非农数据预测 编辑:程序博客网 时间:2024/06/04 17:51
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) { const int m = grid.size(); const int n = grid[0].size(); int f[m][n]; f[0][0] = grid[0][0]; for (int i=1;i<m;i++){ f[i][0] = f[i-1][0] + grid[i][0]; } for (int i=1;i<n;i++){ f[0][i] = f[0][i-1] + grid[0][i]; } for (int i=1;i<m;i++){ for (int j=1;j<n;j++){ f[i][j] = grid[i][j] + min(f[i-1][j],f[i][j-1]); } } return f[m-1][n-1]; }};
class Solution: # @param grid, a list of lists of integers # @return an integer def minPathSum(self, grid): m = len(grid) n = len(grid[0]) all = grid[:] for i in range(1,n): all[0][i] += all[0][i-1] for i in range(1,m): all[i][0] += all[i-1][0] for i in range(1,m): for j in range(1,n): all[i][j] += min(all[i-1][j],all[i][j-1]) return all[m-1][n-1]
总结:
1. 使用 const 比较好,传进来的参数不被修改
2. 注意循环的其始
0 0
- 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
- [leetcode] Minimum Path Sum
- 程序员每年要做的十件事
- HTML5 textarea placeholder not appearing
- JavaScript function scope between script tags
- ASP.NET中向JS传递参数
- Can I use multiple versions of jQuery on the same page?
- Minimum Path Sum
- Git: Delete a branch (local or remote)
- jQuery to disable/enable textarea
- reseting remote to a certain commit
- Checkout remote Git branch
- "面试共三面。 校招笔..."
- Leetcode: Letter Combinations of a Phone Number
- Unique Paths
- 在AJAX返回结果中循环执行另一个AJAX