[LeetCode]64. Minimum Path Sum
来源:互联网 发布:乐高积木淘宝网 编辑:程序博客网 时间:2024/05/22 06:08
https://leetcode.com/problems/minimum-path-sum/
题目很简单,但是要注意沟通确定能否修改input,不要上来就最优化DP,即便是用DP上来也先是二维DP,套路你懂的。
另外行列数值如果常用的话,就在开始赋给变量减少后续代码量。
解法一:不修改初始数组+DP------O(n)空间复杂度
public class Solution { public int minPathSum(int[][] grid) { if (grid == null || grid.length == 0) { return 0; } int row = grid.length; int col = grid[0].length; int[] dp = new int[row]; dp[row - 1] = grid[row - 1][col - 1]; for (int i = row - 2; i >= 0; i--) { dp[i] = dp[i + 1] + grid[i][col - 1]; } for (int j = col - 2; j >= 0; j--) { for (int i = row - 1; i >= 0; i--) { if (i == row - 1) { dp[i] = dp[i] + grid[i][j]; } else { dp[i] = Math.min(dp[i], dp[i + 1]) + grid[i][j]; } } } return dp[0]; }}
解法二:修改初始数组------O(1)空间复杂度
public class Solution { public int minPathSum(int[][] grid) { if (grid == null || grid.length == 0) { return 0; } int row = grid.length; int col = grid[0].length; for (int i = row - 2; i >= 0; i--) { grid[i][col - 1] += grid[i + 1][col - 1]; } for (int i = col - 2; i >= 0; i--) { grid[row - 1][i] += grid[row - 1][i + 1]; } for (int i = row - 2; i >= 0; i--) { for (int j = col - 2; j >= 0; j--) { grid[i][j] += Math.min(grid[i + 1][j], grid[i][j + 1]); } } return grid[0][0]; }}
0 0
- [LeetCode]64.Minimum Path Sum
- LeetCode --- 64. Minimum Path Sum
- LeetCode 64.Minimum Path Sum
- [Leetcode] 64. Minimum Path Sum
- [leetcode] 64.Minimum Path Sum
- [leetcode] 64.Minimum Path Sum
- LeetCode 64. Minimum Path Sum
- 64. Minimum Path Sum LeetCode
- [LeetCode]64. Minimum Path Sum
- leetcode 64. Minimum Path Sum
- [leetcode] 64. Minimum Path Sum
- LeetCode 64. Minimum Path Sum
- LeetCode *** 64. Minimum Path Sum
- leetcode 64. Minimum Path Sum
- 【leetcode】64. Minimum Path Sum
- Leetcode:64. Minimum Path Sum
- LeetCode-64.Minimum Path Sum
- LeetCode 64. Minimum Path Sum
- 链表面试题总结(二)
- SQLite3 C语言API入门
- 串口设置
- 浅谈新能源与计算机
- 软件英文术语缩写大全
- [LeetCode]64. Minimum Path Sum
- 【PHP】获取变量的类型
- git中设置http代理和取消http代理
- CSS的选择器
- perl几个特殊的内置函数
- [产品经理]产品经理的职业发展路线
- selenium 学习<1>
- MII/MDIO接口详解
- ListView嵌套ListView并实现全选计数与Search页面的数据同步