leetcode-岛屿数量-99

embedded/2024/9/22 20:53:40/

题目要求
在这里插入图片描述
思路
1.使用广度优先遍历,将数组中所有为1的元素遍历一遍,遍历过程中使用递归,讲该元素的上下左右四个方向的元素值也置为0
2.统计一共执行过多少次,次数就是岛屿数量
代码实现

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

http://www.ppmy.cn/embedded/35635.html

相关文章

ubuntu中的docker记录(3)——如何安装nvidia-docker以更好地支持GPU加速计算应用程序的运行

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 前言一、nvidia-docker2的安装1. 安装docker2. 安装nvidia-docker2(1) 添加密钥(2) 更新软件列表(3) 安装nvidia-docker2(4) 测试nvidia-docker2 二、可能的报错及解…

MySQL基础_4.排序与分页

文章目录 一、排序二、分页 一、排序 使用 ORDER BY 子句排序&#xff1a; ASC&#xff08;ascend&#xff09;: 升序DESC&#xff08;descend&#xff09;:降序 二、分页 MySQL中使用 LIMIT 实现分页&#xff0c;格式&#xff1a; LIMIT [位置偏移量,] 行数第一个“位置偏…

在uniapp里面使用 mp-html 并且开启 latex 功能

在uniapp里面使用 mp-html 并且开启 latex 功能 默认情况下 mp-html 是不会开启 latex 功能的, 如果需要开启 latex 功能是需要到代码操作拉取代码自行打包的。 这里说一下 mp-html 里面的 latex 功能是由 https://github.com/rojer95/katex-mini 提供的技术实现&#xff0c;…

【一步一步了解Java系列】:探索Java基本类型转换的秘密

看到这句话的时候证明&#xff1a;此刻你我都在努力~ 加油陌生人~ 个人主页&#xff1a; Gu Gu Study ​​ 专栏&#xff1a;一步一步了解Java 喜欢的一句话&#xff1a; 常常会回顾努力的自己&#xff0c;所以要为自己的努力留下足迹。 如果喜欢能否点个赞支持一下&#…

如何在WordPress中设置网站的SEO标题和描述

在WordPress中&#xff0c;想要让你的网站在搜索引擎结果中脱颖而出&#xff0c;设置优秀的SEO标题和描述至关重要。这不仅可以帮助搜索引擎更好地理解你的网站内容&#xff0c;还可以吸引更多的点击率和流量。而选择一款合适的SEO插件是实现这一目标的关键之一。让我们来看看两…

VBA随机取数在Excel中的应用---10以内加法出题及计算得分

VBA随机取数在Excel中的应用---10以内加法出题及阅卷 小学生加减乘除的计算,只要不是应用题,完全可以用VBA随机取数解决,甚至连阅卷都可以用VBA操作。现在写一个最简单的,10以内的加法。 用到两个关键点:随机取数Int(0 + 11 * Rnd())和字典去重(Scripting.Dictionary) …

Java项目硅谷课堂后端报错处理

Java项目硅谷课堂后端报错处理总结 前言service_vod报错import javax.servlet.http.HttpServletResponse;找不到java.lang.IllegalStateException gateway报错Failed to configure a DataSourceUnsatisfiedDependencyException: Error creating bean with name gatewayConfigur…

lint 代码规范,手动修复,以及vscode的第三方插件eslint自动修复

ESlint代码规范 不是语法规范&#xff0c;是一种书写风格&#xff0c;加多少空格&#xff0c;缩进多少&#xff0c;加不加分号&#xff0c;类似于书信的写作格式 ESLint:是一个代码检查工具&#xff0c;用来检查你的代码是否符合指定的规则(你和你的团队可以自行约定一套规则)…