经典的dfs、bfs问题。
问题描述
1 | 给定一个由 '1'(陆地)和 '0'(水)组成的的二维网格,计算岛屿的数量。一个岛被水包围,并且它是通过水平方向或垂直方向上相邻的陆地连接而成的。你可以假设网格的四个边均被水包围。 |
思路
- 经典的 DFS | BFS 问题,搜索连通域的个数
Code: DFS
思路很简单,通过一个dfs找出连通的岛屿然后标志为0,如此以往直至没有1。
1 | class Solution { |
Code: BFS
1 | class Solution { |
总结:dfs比较容易实现而且效率更高。