岛屿数量--

int dx[]={0,0,1,-1};

int dy[]={1,-1,0,0};

class Solution {

public:

void dfs(vector<vector<char>>& grid,vector<vector<bool>>& used,int i,int j,int n,int m){

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

used[i][j]=true;

for(int k=0;k<4;++k){

int x=i+dx[k],y=j+dy[k];

if(x<0||x>=n||y<0||y>=m||used[x][y]||grid[x][y]!='1')continue;

dfs(grid,used,x,y,n,m);

}

}

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

int n=grid.size(),m=grid[0].size();

vector<vector<bool>>used(n,vector(m,false));

int cnt=0;

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

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

if(used[i][j]==false&&grid[i][j]=='1'){

cnt++;

dfs(grid,used,i,j,n,m);

}

}

}

return cnt;

}

};

相关推荐
代码探秘者2 小时前
【算法】吃透18种Java 算法快速读写模板
数据结构·数据库·python·算法·spring
2301_816651222 小时前
C++模块化设计原则
开发语言·c++·算法
gaozhiyong08132 小时前
提示词的解剖学:Gemini 3.1 Pro 提示工程高级策略与国内实战
人工智能·算法·机器学习
小范自学编程3 小时前
算法训练营Day44 - 动态规划part12
算法·动态规划
。。,……~3 小时前
RGB-IR融合算法CDDFUSE理解+复现
算法
小刘的AI小站3 小时前
L9 Policy Gradient Method (二)
算法·机器学习·强化学习
WolfGang0073213 小时前
代码随想录算法训练营 Day21 | 回溯算法 part03
数据结构·算法
tankeven3 小时前
HJ152 取数游戏
c++·算法
程序员Shawn3 小时前
【机器学习 | 第六篇】- 机器学习
人工智能·算法·机器学习·集成学习