跳过正文
  1. 全部/
  2. 笔记/
  3. LeetCode/

018 洪水填充

func dfs(grid [][]byte, i, j int) {
    if i < 0 || i >= len(grid) || j < 0 || j >= len(grid[0]) || grid[i][j] != '1' {
        return
    }
    grid[i][j] = '2'
    dfs(grid, i-1, j)
    dfs(grid, i, j-1)
    dfs(grid, i+1, j)
    dfs(grid, i, j+1)
}
  
func numIslands(grid [][]byte) int {
    res := 0
    for i := range grid {
        for j := range grid[0] {
            if grid[i][j] == '1' {
                dfs(grid, i, j)
                res++
            }
        }
    }
    return res
}
Reply by Email