1 Star 0 Fork 1

陈鹏/leecode with labuladong

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
200.岛屿数量.cpp 895 Bytes
一键复制 编辑 原始数据 按行查看 历史
陈鹏 提交于 2022-07-23 18:07 . 回溯-岛屿问题
/*
* @lc app=leetcode.cn id=200 lang=cpp
*
* [200] 岛屿数量
*/
// @lc code=start
class Solution {
void dfs(vector<vector<char>>& grid, int row, int col) {
int m = grid.size(), n = grid[0].size();
if (row < 0 || col < 0 || row >= m || col >= n) return;
if (grid[row][col] == '0') return;
grid[row][col] = '0';
dfs(grid, row + 1, col);
dfs(grid, row - 1, col);
dfs(grid, row, col + 1);
dfs(grid, row, col - 1);
}
public:
int numIslands(vector<vector<char>>& grid) {
int res = 0;
int m = grid.size(), n = grid[0].size();
for (int i = 0; i < m; ++i) {
for (int j = 0; j < n; ++j) {
if (grid[i][j] == '1') {
res += 1;
dfs(grid, i, j);
}
}
}
return res;
}
};
// @lc code=end
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/Chan1998/leecode-with-labuladong.git
git@gitee.com:Chan1998/leecode-with-labuladong.git
Chan1998
leecode-with-labuladong
leecode with labuladong
master

搜索帮助