0063.不同路径II.md

修改Java代码,更容易让人理解
This commit is contained in:
hailincai
2021-11-02 08:00:36 -04:00
committed by GitHub
parent 1244f1d513
commit fe730eab54

View File

@ -179,17 +179,15 @@ class Solution {
public int uniquePathsWithObstacles(int[][] obstacleGrid) { public int uniquePathsWithObstacles(int[][] obstacleGrid) {
int n = obstacleGrid.length, m = obstacleGrid[0].length; int n = obstacleGrid.length, m = obstacleGrid[0].length;
int[][] dp = new int[n][m]; int[][] dp = new int[n][m];
dp[0][0] = 1 - obstacleGrid[0][0];
for (int i = 1; i < m; i++) { for (int i = 0; i < m; i++) {
if (obstacleGrid[0][i] == 0 && dp[0][i - 1] == 1) { if (obstacleGrid[0][i] == 1) break; //一旦遇到障碍,后续都到不了
dp[0][i] = 1; dp[0][i] = 1;
} }
} for (int i = 0; i < n; i++) {
for (int i = 1; i < n; i++) { if (obstacleGrid[i][0] == 1) break; ////一旦遇到障碍,后续都到不了
if (obstacleGrid[i][0] == 0 && dp[i - 1][0] == 1) {
dp[i][0] = 1; dp[i][0] = 1;
} }
}
for (int i = 1; i < n; i++) { for (int i = 1; i < n; i++) {
for (int j = 1; j < m; j++) { for (int j = 1; j < m; j++) {
if (obstacleGrid[i][j] == 1) continue; if (obstacleGrid[i][j] == 1) continue;