岛屿数量(二维矩阵DFS)

图片说明

/**
 * 判断岛屿数量
 * @param grid char字符型二维数组 
 * @return int整型
 */
function solve( grid ) {
    // write code here
    var row = grid.length;
    var column = grid[0].length;
    var count = 0
    if(row == 1 && column == 1){
        return grid[0][0] == 1? 1:0
    }
    function dfs(i,j){
        if(i<0 || j<0 || i>=row || j>=column || 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<row;i++){
        for(let j=0;j<column;j++){
            if(grid[i][j] == 1){
                count++
                dfs(i,j)
            }
        }
    }
    return count
}
module.exports = {
    solve : solve
};
其他算法 文章被收录于专栏

其他算法

全部评论

相关推荐

不愿透露姓名的神秘牛友
07-03 18:22
投了几百份简历,专业和方向完全对口,都已读不回。尝试改了一下学校,果然有奇效。
steelhead:这不是很正常嘛,BOSS好的是即便是你学院本可能都会和聊几句,牛客上学院本机会很少了
点赞 评论 收藏
分享
qq乃乃好喝到咩噗茶:院校后面加上211标签,放大加粗,招呼语也写上211
点赞 评论 收藏
分享
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务