풀이
/**
* @param {character[][]} grid
* @return {number}
*/
var numIslands = function (grid) {
const traversal = (grid, i, j) => {
if (
i >= grid.length ||
i < 0 ||
j >= grid[i].length ||
j < 0||
grid[i][j] === "0"
)
return;
grid[i][j] = "0";
traversal(grid, i + 1, j);
traversal(grid, i - 1, j);
traversal(grid, i, j + 1);
traversal(grid, i, j - 1);
};
let sum = 0;
for (let i = 0; i < grid.length; i++) {
for (let j = 0; j < grid[i].length; j++) {
if (grid[i][j] !== "0") {
sum++;
traversal(grid, i, j);
}
}
}
console.log(sum);
return sum;
};