LeetCode:200. 岛屿数量

class Solution {

public:

int numIslands(vector<vector<char>>& grid) {

int res=0;

int m=grid.size(),n=grid0.size();

for(int i=0;i<m;i++){

for(int j=0;j<n;j++){

if(gridij=='1'){

//发现岛屿数量加1

res++;

//淹没岛屿

dfs(grid,i,j);

}

}

}

return res;

}

void dfs(vector<vector<char>>& grid,int i,int j){

int m=grid.size(),n=grid0.size();

//超出边界

if(i<0||j<0||i>=m||j>=n){

return;

}

//已经是海水

if(gridij=='0'){

return;

}

gridij='0';

dfs(grid,i+1,j);

dfs(grid,i-1,j);

dfs(grid,i,j+1);

dfs(grid,i,j-1);

}

};

相关推荐
mmmmath_3几秒前
LeetCode.350.两个数组的交集II
算法
Ivanqhz7 分钟前
图是“拓扑 + 类型 + 形状“的世界
算法·决策树·机器学习·php·集成学习
上官唐云9 分钟前
2024届本科 | C++ Linux服务端开发求职:从嵌入式到底层服务端的技术之路(附开源项目+简历)
linux·c++·开源·求职招聘
find1star18 分钟前
LeetCode 54:螺旋矩阵——用四个边界模拟矩阵收缩
java·算法·leetcode·边缘计算·学习方法
z_mazin31 分钟前
逆向一种私有二进制序列化格式:从零到字节级解析器
网络·python·网络协议·算法·rpc
luj_176831 分钟前
罚球线右移破防新策略
c语言·开发语言·网络·经验分享·算法
vivo互联网技术33 分钟前
SmartPhotoCrafter: 先思考后修图,统一理解-生成的图像优化新范式
人工智能·算法·计算机视觉
吞下星星的少年·-·1 小时前
LeetCode 热题 100 两数之和(哈希表)
算法·leetcode·哈希算法
Shan12051 小时前
经典算法题示例与详解:飞地的数量(二)
java·数据结构·算法
蒸蒸yyyyzwd1 小时前
面经学习笔记
c++·面试·八股