题解 | #岛屿数量#
岛屿数量
https://www.nowcoder.com/practice/0c9664d1554e466aa107d899418e814e
package main /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * 判断岛屿数量 * @param grid char字符型二维数组 * @return int整型 */ func solve( grid [][]byte ) int { // write code here if len(grid) == 0 || len(grid[0]) == 0 { return 0 } num := 0 for i := 0; i < len(grid); i++ { for j := 0; j < len(grid[0]);j++ { if grid[i][j] == '1' { dfs(grid, i, j) num++ } } } return num } func dfs (grid [][]byte, i,j int){ if i < 0 || i >= len(grid) || j < 0 || j >= len(grid[0]) || grid[i][j] == '0' { return } grid[i][j] = '0' dfs(grid, i + 1, j) dfs(grid, i - 1, j) dfs(grid, i, j + 1) dfs(grid, i, j - 1) }