题解 | #岛屿数量#

岛屿数量

https://www.nowcoder.com/practice/0c9664d1554e466aa107d899418e814e

#include <vector>
class Solution {
public:

    void dfs(vector<vector<char>>& grid, int i, int j){
        int n = grid.size(); // 行
        int m = grid[0].size(); // 列
        grid[i][j] = '0';
        if(i - 1 >= 0 && grid[i - 1][j] == '1'){
            dfs(grid, i - 1, j);
        }
        if(i + 1 < n && grid[i + 1][j] == '1'){
            dfs(grid, i + 1, j);
        }
        if(j + 1 < m && grid[i][j + 1] == '1'){
            dfs(grid, i, j + 1);
        }
        if(j - 1 >= 0 && grid[i][j - 1] == '1'){
            dfs(grid, i, j - 1);
        }
    }
    int solve(vector<vector<char>> grid) {
        int n = grid.size();
        if(n == 0) return 0;
        int m = grid[0].size();
        int cnt = 0;
        for(int i = 0; i < n; i ++){
            for(int j = 0; j < m; j ++)
                if(grid[i][j] == '1'){
                    cnt ++;
                    dfs(grid, i, j);
                }
        }
        return cnt;
    }
};

全部评论

相关推荐

叶扰云倾:进度更新,现在阿里云面完3面了,感觉3面答得还行,基本都答上了,自己熟悉的地方也说的比较细致,但感觉面试官有点心不在焉不知道是不是不想要我了,求阿里收留,我直接秒到岗当阿里孝子,学校那边的房子都退租了,下学期都不回学校,全职猛猛实习半年。这种条件还不诱人吗难道 然后现在约到了字节的一面和淘天的复活赛,外加猿辅导。华为笔试完没动静。 美团那边之前投了个base广州的,把我流程卡麻了,应该是不怎么招人,我直接简历挂了,现在进了一个正常的后端流程,还在筛选,不知道还有没有hc。
点赞 评论 收藏
分享
点赞 评论 收藏
分享
ohs的小木屋:比不少实习待遇高了
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务