FloodFill 算法(leetcode200)
Contents
FloodFill 算法(leetcode200)
给定一个二维数组,只含有0和1两个字符,其中1代表陆地,0代表水域,横向和纵向的陆地连接成岛屿,被水域分隔开。问给出的地图中有多少岛屿。
想象上面是一个地图,棕色的是陆地,蓝色的是海洋,现在滴一滴墨水到第一个点,然后墨水蔓延到小岛的所有地方。
其实求岛屿就是对所有点进行一次深度优先遍历。对于每个点,一旦没有访问过而且也是陆地的话就也对它进行标记。
1 | int d[4][2]={{0,1},{1,0},{0,-1},{-1,0}}; |
Author: corn1ng
Link: https://corn1ng.github.io/2018/05/26/FloodFill 算法/
License: 知识共享署名-非商业性使用 4.0 国际许可协议