一、題目地址
https://www.nowcoder.com/practice/0c9664d1554e466aa107d899418e814e?tpId=188&&tqId=38590&rp=1&ru=/ta/job-code-high-week&qru=/ta/job-code-high-week/question-ranking
二、思路地址
https://www.bilibili.com/video/BV1Y7411v7Wh
三、具體代碼
/**
* 判斷島嶼數量
* @param grid char字符型二維陣列
* @return int整型
*/
function solve( grid ) {
let count = 0;//島嶼數量
function dfs(i, j) {
if(i < 0 || i >= grid.length || j < 0 || j >= grid[0].length
|| grid[i][j] === '0') {
return;
}
grid[i][j] = '0';
dfs(i+1, j);
dfs(i-1, j);
dfs(i, j+1);
dfs(i, j-1);
}
for(let i=0; i<grid.length; i++) {
for(let j=0; j<grid[0].length; j++) {
if(grid[i][j] === '1') {
count++;
dfs(i, j);
}
}
}
return count;
}
module.exports = {
solve : solve
};
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/287469.html
標籤:其他
