题解 | #岛屿数量#

岛屿数量

http://www.nowcoder.com/practice/0c9664d1554e466aa107d899418e814e

package main

/**
 * 判断岛屿数量
 * @param grid char字符型二维数组 
 * @return int整型
*/
func solve( grid [][]byte ) int {
    sum := 0
    for i:=0;i<len(grid);i++{
        for j:=0;j<len(grid[i]);j++{
            if grid[i][j] == '1'{
                sum++
                markIsland(grid,i,j)
            }
        }
    }
    return sum
}

func markIsland(grid [][]byte, row, col int) {
    if row >= 0 && row < len(grid) && col >= 0 && col < len(grid[row]) && grid[row][col] == '1'{
        grid[row][col] = '2'
        markIsland(grid,row-1,col)
        markIsland(grid,row+1,col)
        markIsland(grid,row,col-1)
        markIsland(grid,row,col+1)
    }
}
全部评论

相关推荐

巨人网络 测试 总包20左右
点赞 评论 收藏
转发
点赞 收藏 评论
分享
牛客网
牛客企业服务