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

曲靖网站建设0doit网站建设中素材

曲靖网站建设0doit,网站建设中素材,重庆网站,php网站设置如何使用1. 题目链接#xff1a;200. 岛屿数量 2. 题目描述#xff1a; 给你一个由 1#xff08;陆地#xff09;和 0#xff08;水#xff09;组成的的二维网格#xff0c;请你计算网格中岛屿的数量。 岛屿总是被水包围#xff0c;并且每座岛屿只能由水平方向和/或竖直方向上…1. 题目链接200. 岛屿数量 2. 题目描述 给你一个由 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.lengthn grid[i].length1 m, n 300grid[i][j] 的值为 0 或 1 3. 算法思路 初始化一个与输入网格大小相同的二维布尔数组 vis用于记录每个位置是否已经被访问过。初始时所有位置都未被访问过所以 vis 中的所有元素都为 false。获取输入网格的行数 m 和列数 n。定义一个整数变量 ret用于记录岛屿的数量。初始值为 0。使用两层嵌套循环遍历整个网格。对于每个位置 (i, j)执行以下操作 如果该位置未被访问过且其值为 ‘1’表示陆地则将 ret 的值加一并调用 dfs 函数进行深度优先搜索。 在 dfs 函数中将当前位置标记为已访问即将 vis[i][j] 设置为 true。使用四个方向的偏移量 dx 和 dy分别表示上、下、左、右四个方向。对于每个方向计算新的坐标 (x, y)并检查其是否在网格范围内且未被访问过且值为 ‘1’。如果满足条件则递归调用 dfs 函数继续搜索相邻的陆地。当所有位置都被访问过后返回岛屿的数量 ret。 4. C算法代码 class Solution {vectorvectorbool vis; // 用于记录访问过的岛屿位置int m, n; // 网格的行数和列数 public:// 计算岛屿的数量int numIslands(vectorvectorchar grid) {m grid.size(), n grid[0].size();vis vectorvectorbool(m, vectorbool(n));int ret 0;for (int i 0; i m; i) {for (int j 0; j n; j) {if (!vis[i][j] grid[i][j] 1) { // 如果当前位置未被访问过且为陆地ret; // 岛屿数量加一dfs(grid, i, j); // 进行深度优先搜索}}}return ret;}int dx[4] {0, 0, 1, -1}; // x轴方向的偏移量int dy[4] {1, -1, 0, 0}; // y轴方向的偏移量// 深度优先搜索函数void dfs(vectorvectorchar grid, int i, int j) {vis[i][j] true; // 标记当前位置已访问for (int k 0; k 4; k) {int x i dx[k], y j dy[k]; // 计算相邻位置的坐标if (x 0 x m y 0 y n !vis[x][y] grid[x][y] 1) { // 如果相邻位置在网格内且未被访问过且为陆地dfs(grid, x, y); // 继续进行深度优先搜索}}} };
http://www.zqtcl.cn/news/347361/

相关文章:

  • 用什么程序做网站佛山网站建设慕枫
  • 萍乡网站建设哪家公司好惠州开发做商城网站建设哪家好
  • 2021半夜好用的网站在菲做平台网站
  • 国家排污许可网站台账怎么做wordpress表单位插件
  • 如何构建成交型网站wordpress搭建英文网站
  • 阿里云网站建设方案书怎么写四川做网站公司哪家好
  • 提供衡水网站建设wordpress游客看小图登陆查看大图
  • 网站开发优势wordpress 密码破解
  • 做网站空间需要多大深圳服装网站建设
  • 建网站wordpress制作app多少钱一个
  • 怎么做装修网站torrentkitty磁力猫
  • 网站建立站点wordpress手机网站模板制作
  • 宁夏建设工程招标投标信息网站教师做网站赚钱
  • 潍坊网站制作价格网站维护入门教程
  • 微信网站怎么做下载附件wordpress英文主题汉化
  • 桂平网站设计python基础教程第二版
  • wordpress hermit杭州企业seo网站优化
  • 贵州做团队培训的网站法学网站阵地建设
  • 网站死链是什么西宁高端网站开发公司
  • 做团购网站的公司wordpress附件存放位置
  • 成都最专业做网站的仿win8网站模板
  • 国外设计类网站男女做暖暖试看网站
  • 网站设计哪个好珠海微网站进入
  • 云主机开网站教程模板网会员
  • 网站建设无锡虚拟网站官网
  • 品牌网站设计联系东莞网站优化公
  • 自己做整个网站的流程php装修网站源码
  • 天津网站建设班模拟网站建设软件有哪些
  • 服务类的网站怎么做做软件的网站担保网站
  • 最新电子产品网站模板海口网站排名提升