Menu
CoddyTech

Number of Islands

中等图python iconjava iconcpp iconc iconjs icon+10

你会得到一个由等长字符串组成的列表,用来表示地图,其中 '1' 表示一格陆地,'0' 表示一格水域。上下左右相邻的陆地格属于同一座岛屿。仅在角上相接的格子不相连。返回岛屿的数量。

函数

numIslands(grid: string-array) → integer
gridstring-array
地图,每行一个字符串
返回值integer
岛屿数量

约束条件

  • 1 ≤ grid.length ≤ 150
  • 1 ≤ grid[i].length ≤ 150
  • 每一行的长度都相同。
  • 每个字符都是 '0' 或 '1'。

示例

输入
grid = ["11000", "11000", "00100", "00011"]
输出
3
解释
左上角的四个方格组成一个岛屿。第三行中间的方格只在角上与它们相连,因此它是第二个岛屿。右下角的两个方格组成第三个岛屿。
challenge icon

进阶

现在,地图上的水域中会逐个出现陆地格子。每出现一个新格子,你能在不重新扫描整张地图的情况下,报告岛屿的数量吗?

重置代码
def numIslands(grid):
    # 在这里编写代码

测试 #1

测试 #2

参数

grid = ["11000", "11000", "00100", "00011"]

预期输出

3