# LeetCode[200] 岛屿数量

Related Topics:

“深度优先搜索”: https://leetcode.com/tag/depth-first-search/

“广度优先搜索”: https://leetcode.com/tag/breadth-first-search/

“并查集”: https://leetcode.com/tag/union-find/

“数组”: https://leetcode.com/tag/array/

“矩阵”: https://leetcode.com/tag/matrix/

Similar Questions:

“被围绕的区域”: https://leetcode.com/problems/surrounded-regions/

“墙与门”: https://leetcode.com/problems/walls-and-gates/

“岛屿数量 II”: https://leetcode.com/problems/number-of-islands-ii/

“无向图中连通分量的数目”: https://leetcode.com/problems/number-of-connected-components-in-an-undirected-graph/

“不同岛屿的数量”: https://leetcode.com/problems/number-of-distinct-islands/

“岛屿的最大面积”: https://leetcode.com/problems/max-area-of-island/

### Problem:

给你一个由 `'1'`

（陆地）和 `'0'`

（水）组成的的二维网格，请你计算网格中岛屿的数量。

岛屿总是被水包围，并且每座岛屿只能由水平方向和/或竖直方向上相邻的陆地连接形成。

此外，你可以假设该网格的四条边均被水包围。

**示例 1：**

```
输入：grid = [
["1","1","1","1","0"],
["1","1","0","1","0"],
["1","1","0","0","0"],
["0","0","0","0","0"]
]
输出：1
```

**示例 2：**

```
输入：grid = [
["1","1","0","0","0"],
["1","1","0","0","0"],
["0","0","1","0","0"],
["0","0","0","1","1"]
]
输出：3
```

**提示：**

`m == grid.length`

`n == grid[i].length`

`1 <= m, n <= 300`

`grid[i][j]`

的值为`'0'`

或 `’1’