岛屿数量
#include<iostream>
using namespace std;
class Solution {
public:
int vis[305][305];
void dfs(int i,int j,int l,int w,vector<vector<char>>& grid) {
if (i<0||i>=l || j<0||j>=w) return ;
if (vis[i][j] == 1) return;
if (grid[i][j]!= '1') return;
vis[i][j] = 1;
dfs(i+1,j,l,w,grid);
dfs(i,j+1,l,w,grid);
dfs(i-1,j,l,w,grid);
dfs(i,j-1,l,w,grid);
}
int numIslands(vector<vector<char>>& grid) {
int ans = 0;
for(int i=0;i<grid.size();i++) {
for (int j=0;j<grid[i].size();j++) {
if(grid[i][j] == '1' && vis[i][j] == 0) {
dfs(i,j,grid.size(),grid[i].size(),grid);
ans++;
}
}
}
return ans;
}
};
int main()
{
return 0;
}
基础dfs