LeetCode *** 200. Number of Islands (Depth-first Search)
来源:互联网 发布:flash软件下载教程 编辑:程序博客网 时间:2024/05/11 05:02
题目:
Given a 2d grid map of '1'
s (land) and '0'
s (water), count the number of islands. An island is surrounded by water and is formed by connecting adjacent lands horizontally or vertically. You may assume all four edges of the grid are all surrounded by water.
Example 1:
11110110101100000000
Answer: 1
Example 2:
11000110000010000011
Answer: 3
分析:
利用深搜遍历,最终获得结果。
代码:
class Solution {public: int num=0,n,m; int numIslands(vector<vector<char>>& grid) { if(grid.size()<1)return 0; n=grid.size(),m=grid[0].size(); for(int i=0;i<n;++i) for(int j=0;j<m;++j) if(grid[i][j]=='1'){ num++; dfs(grid,i,j); } return num; } void dfs(vector<vector<char>>& grid,int s,int e){ grid[s][e]='0'; if(s>0&&grid[s-1][e]=='1')dfs(grid,s-1,e); if(s<n-1&&grid[s+1][e]=='1')dfs(grid,s+1,e); if(e>0&&grid[s][e-1]=='1')dfs(grid,s,e-1); if(e<m-1&&grid[s][e+1]=='1')dfs(grid,s,e+1); }};
0 0
- LeetCode *** 200. Number of Islands (Depth-first Search)
- LeetCode 200. Number of Islands(小岛)
- LeetCode 200. Number of Islands (DFS)
- [LeetCode]200.Number of Islands
- LeetCode 200. Number of Islands
- [leetcode] 200.Number of Islands
- 【leetcode】 200. Number of Islands
- [leetcode] 200. Number of Islands
- Leetcode 200. Number of Islands
- 200. Number of Islands LeetCode
- leetcode 200. Number of Islands
- LeetCode 200. Number of Islands
- leetcode.200. Number of Islands
- LeetCode 200. Number of Islands
- LeetCode-200.Number of Islands
- LeetCode - 200. Number of Islands
- [leetcode] 200. Number of Islands
- [LeetCode] 200. Number of Islands
- 类 ApplicationInfo详解
- 检查一颗二叉树是否是二叉查找树
- Python @classmethod和@staticmethod区别
- HDFS 读取文件和存储文件
- Linux学习系列-轮询函数
- LeetCode *** 200. Number of Islands (Depth-first Search)
- 2016西电校赛网络赛 Problem C 寻找万神
- 基本数据类型与隐式转换
- Android Fragment生命周期
- 实现自己的shell框架
- android studio 项目引用eclipse 依赖时的问题
- Python supervisor
- Redhat 或 CentOS 发行版本号
- Jacob操作ppt--截取ppt部分页内容