Skip to content

Commit cd10eda

Browse files
committed
Solution With JS
1 parent 678b030 commit cd10eda

File tree

1 file changed

+23
-0
lines changed

1 file changed

+23
-0
lines changed

Medium/542. 01 Matrix.js

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
var updateMatrix = function (mat) {
2+
const m = mat.length,
3+
n = mat[0].length;
4+
5+
for (let i = 0; i < m; i++) {
6+
for (let j = 0; j < n; j++) {
7+
if (mat[i][j] === 0) continue;
8+
mat[i][j] = Infinity;
9+
if (i - 1 >= 0) mat[i][j] = Math.min(mat[i][j], 1 + mat[i - 1][j]);
10+
if (j - 1 >= 0) mat[i][j] = Math.min(mat[i][j], 1 + mat[i][j - 1]);
11+
}
12+
}
13+
14+
for (let i = m - 1; i >= 0; i--) {
15+
for (let j = n - 1; j >= 0; j--) {
16+
if (mat[i][j] === 0) continue;
17+
if (i + 1 < m) mat[i][j] = Math.min(mat[i][j], 1 + mat[i + 1][j]);
18+
if (j + 1 < n) mat[i][j] = Math.min(mat[i][j], 1 + mat[i][j + 1]);
19+
}
20+
}
21+
22+
return mat;
23+
};

0 commit comments

Comments
 (0)