当前位置: 首页 > news >正文

0453牡丹江信息网西安网站优化平台

0453牡丹江信息网,西安网站优化平台,开网店的流程和步骤及费用,宣传画册设计给你一个由 1(陆地)和 0(水)组成的的二维网格,请你计算网格中岛屿的数量。 岛屿总是被水包围,并且每座岛屿只能由水平方向和/或竖直方向上相邻的陆地连接形成。 此外,你可以假设该网格的四条边…

给你一个由 '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

思路一:DFS

c++解法

class Solution {
public:void dfs(vector<vector<char>>& grid,int i,int j,int m,int n){if(i<0 || i>=m || j<0 || j>=n || grid[i][j] == '0')return;grid[i][j] = '0';dfs(grid,i + 1,j,m,n);dfs(grid,i - 1,j,m,n);dfs(grid,i,j + 1,m,n);dfs(grid,i,j - 1,m,n);}int numIslands(vector<vector<char>>& grid) {int m = grid.size();int n = grid[0].size();int num = 0;for(int i=0;i<m;i++)for(int j=0;j<n;j++){num += grid[i][j] - '0';dfs(grid,i,j,m,n);}return num;}
};

分析:

本题为岛屿类问题,可用dfs的方式解决,深度搜索将每个遍历过的格子赋值为2即标记为已遍历,后面根据题目需要输出答案,本题是将每个岛屿遍历一遍,当到下一个未遍历的岛屿返回值加一

总结:

本题考察对dfs的应用,利用dfs每当遍历到一个未计数的岛屿则使用dfs将其设为已遍历的岛屿

http://www.yayakq.cn/news/960376/

相关文章:

  • 怎么把自己的网站放到百度上百度怎样做网站并宣传网站
  • 专业网站设计 软件h5响应式网站建设方案
  • 网站建设公司哪家好?该如何选择桂林网页
  • 做pc端网站怎么样外贸网站一般用什么框架
  • 保定中小企业网站制作厦门推广公司
  • 怎么查看网站点击量htmlplay
  • 西部数码网站建设教程wordpress修改底部联系QQ
  • 南京制作企业网站源代码查看WordPress文件
  • 淄博网站seo如何运营一个电商平台
  • 建设征信注册中心网站电子商务网站建设与管理相关文献
  • 海门建网站公司东莞互联网招聘
  • WordPress如何屏蔽国内用户百度seo优化排名软件
  • 织梦的手机端网站微信网页版登录界面
  • 未来 网站开发 知乎又好又快自助建站
  • wordpress首页加外链班级优化大师下载
  • 网站源码怎么下载加快网站集约化建设总结
  • 电子商务网站怎么做seo台州铭企做的网站
  • 做金融资讯网站需要哪些牌照网站建设需要注意事项
  • 辽宁鞍山建设工程信息网站wordpress漫画网站
  • 网站建设有哪些软件有哪些内容百度非企渠道开户
  • 做网站不用服务器吗制作英文网站多少钱
  • 焦作网站建设哪家正规虚拟主机加RDS安装wordpress
  • 哪个网站做刷手最好网站建设内链
  • 做ppt的网站叫什么软件网站排名上升 优帮云
  • 放单网站建设怎么架构网站
  • 安全狗网站白名单指什么网站建设排名优化技巧
  • 做网站规划中国企业招聘网
  • 给境外网站网站做代理谷歌搜索引擎入口363
  • 做一个网站放网上要多少钱品牌升级策略
  • 公司免费注册热狗网站排名优化外包