LeetCode Minimum Path Sum
来源:互联网 发布:java电信资费系统 编辑:程序博客网 时间:2024/06/13 13:29
原题链接在这里:https://leetcode.com/problems/minimum-path-sum/
是DP题,与Unique Paths 和 Unique Paths II相似。存储历史信息是走到走到历史点的最小权重路径,更新当前点用上面点和左面点中的小值加上grid中当前点的值。
跟Unique Paths 和 Unique Paths II 都有相同的第二种降维方法。
AC Java:
public class Solution { public int minPathSum(int[][] grid) { /* //Method 1 if(grid == null || grid.length == 0 || grid[0].length == 0){ return Integer.MAX_VALUE; } int row = grid.length; int column = grid[0].length; int [][] res = new int[row][column]; res[0][0] = grid[0][0]; for(int i = 1; i < row; i++){ res[i][0] = res[i-1][0] + grid[i][0]; } for(int j = 1; j < column; j++){ res[0][j] = res[0][j-1] + grid[0][j]; } for(int i = 1; i<row; i++){ for(int j = 1; j< column; j++){ res[i][j] = Math.min(res[i-1][j], res[i][j-1])+grid[i][j]; } } return res[row-1][column-1]; */ //Method 2 if(grid == null || grid.length == 0 || grid[0].length == 0){ return Integer.MAX_VALUE; } int row = grid.length; int column = grid[0].length; int [] res = new int[column]; res[0] = grid[0][0]; for(int j = 1; j< column; j++){ res[j] = res[j-1] + grid[0][j]; } for(int i = 1; i < row; i++){ for(int j = 0; j< column; j++){ if(j == 0){ res[j] += grid[i][j]; }else{ res[j] = Math.min(res[j-1], res[j]) + grid[i][j]; } } } return res[column-1]; }}
0 0
- 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
- Leetcode Minimum Path Sum
- LeetCode Minimum Path Sum
- ZereneStacker 1.04 for Windows 焦点堆叠软件 简体中文 汉化
- 关于牛气轰轰的闭包
- java虚拟机回收机制原理
- 回调函数和钩子函数
- 蓝懿教育记录
- LeetCode Minimum Path Sum
- Leetcode: Longest Substring Without Repeating Characters
- Add Digits
- #读书笔记#《The Art of Software Testing》——第六章
- kernel-firmware
- bzoj-1128 Lam
- Bash shell中的位置参数$#,$*,$@,$0,$1,$2...及特殊参数$?,$-等的含义
- 使用CentOS DVD1 和DVD2做本地yum源
- HashMap