200. Number of Islands

来源:互联网 发布:linux下载整个文件夹 编辑:程序博客网 时间:2024/05/20 19:16
//9msclass Solution {public:    void land_change(vector<vector<char>>& grid,int x,int y)    {        grid[x][y]='w';        if(y+1<grid[0].size()&&grid[x][y+1]=='1') land_change(grid,x,y+1);        if(x+1<grid.size()&&grid[x+1][y]=='1') land_change(grid,x+1,y);        if(y-1>=0&&grid[x][y-1]=='1') land_change(grid,x,y-1);        if(x-1>=0&&grid[x-1][y]=='1') land_change(grid,x-1,y);    }    int numIslands(vector<vector<char>>& grid) {        int num=0;        for(int i=0;i<grid.size();i++)        {            for(int j=0;j<grid[0].size();j++)            {                if(grid[i][j]=='1')                 {                    land_change(grid,i,j);                    num++;                }            }        }        return num;    }};
0 0