dfs-岛屿面积

LC-695
这个做的比较快,一遍AC,之前在百练上做过一道一模一样的
用dfs递归就可以

问题来了:思考 如何用栈实现dfs(非递归的方式)
(实现过 但是当时比较麻烦)
【这个代码好蠢啊,我设了一个二维数组标记访问没访问过,结果题解直接访问过设为0就可以了】

class Solution {
public:
    int max;
    int biaoji[50][50];
    int a[2]={-1,1};
    int dfs(int i,int j,vector>& grid){
        biaoji[i][j]=-1;
        int bianli=1;
        int len=grid.size();
        int wid=grid[0].size();
        if(i+1=0&&biaoji[i-1][j]==0&&grid[i-1][j]==1){
            bianli+=dfs(i-1,j,grid);
        }
                if(j+1=0&&biaoji[i][j-1]==0&&grid[i][j-1]==1){
            bianli+=dfs(i,j-1,grid);
        }
        return bianli;
    }
    
    int maxAreaOfIsland(vector>& grid) {
        memset(biaoji,0,sizeof(biaoji));
        int max=0;
        for(int i=0;i

你可能感兴趣的:(dfs-岛屿面积)