day59(1.18)——leetcode面试经典150

200. 岛屿数量

200. 岛屿数量

题目:

题解:

java 复制代码
class Solution {
    int l,r;
    boolean[][] flag;
    int sum = 0; 
    public int numIslands(char[][] grid) {
        l = grid.length;
        r = grid[0].length;
        flag = new boolean[l][r];
        for(int i=0;i<l;i++) {
            for(int j=0;j<r;j++) {
                if(grid[i][j] == '1' && !flag[i][j]) {
                    dfs(grid,i,j);
                    sum++;
                }
            }
        }
        return sum;
    }
    
    public void dfs(char[][] grid, int x, int y) {
        if(x<0 || y<0 || x >= l || y >= r || grid[x][y] == '0' || flag[x][y] == true) {
            return;
        }
        flag[x][y] = true;
        dfs(grid,x+1,y);
        dfs(grid,x,y+1);
        dfs(grid,x-1,y);
        dfs(grid,x,y-1);
    }
}
相关推荐
星轨初途2 分钟前
LeetCode 热题 100——day10 和为 K 的子数组
开发语言·c++·算法·leetcode
数模竞赛Paid answer4 分钟前
2021年深圳杯数学建模C题配电网可靠性和故障软自愈研究解题全过程论文及程序
算法·数学建模·数据分析·深圳杯
有点。8 分钟前
C++广度优先搜索(二)-练习题
c++·算法·宽度优先
疯狂打码的少年21 分钟前
【数据结构】队列的应用:循环队列
数据结构·笔记·算法
evans在进步25 分钟前
LeetCode 17:电话号码的字母组合——Java DFS 回溯法详解
java·leetcode·深度优先
Winner_hwx36 分钟前
python拓展
算法
TAN-90°-1 小时前
Deep Learning for Computer Vision——Image Classification with Linear Classifiers
python·深度学习·算法·计算机视觉·线性回归
阿pin1 小时前
Java随笔-红黑树
java·python·算法·红黑树
Hi李耶1 小时前
【LeetCode】17.电话号码的字母组合
算法·leetcode·职场和发展
江畔柳前堤10 小时前
大语言模型分布式训练:从并行策略到万卡工程的系统梳理
人工智能·分布式·深度学习·算法·目标检测·机器学习·语言模型