1. 题目描述
给定一个包含了一些 0 和 1 的非空二维数组 grid 。一个 岛屿 是由一些相邻的 1 (代表土地) 构成的组合,这里的「相邻」要求两个 1 必须在水平
或者竖直方向上相邻。你可以假设 grid 的四个边缘都被 0(代表水)包围着。找到给定的二维数组中最大的岛屿面积。(如果没有岛屿,则返回面积为 0 。)
  1. 题解
深度优先搜索
  1. 代码
class Solution {
public:void dfs(vector<vector<int>>& grid,int x,int y,int m,int n){for (int k=0;k<4;k++){int xx=x+d[k][0];int yy=y+d[k][1];if (xx<0||yy<0||xx>=m||yy>=n||!grid[xx][yy]) continue;grid[xx][yy]=0;cnt++;dfs(grid,xx,yy,m,n);}}int maxAreaOfIsland(vector<vector<int>>& grid) {int m=grid.size();if (!m) return 0;int n=grid[0].size();res=0;for (int i=0;i<m;i++){for (int j=0;j<n;j++){cnt=0;if (grid[i][j]){grid[i][j]=0;cnt++;dfs(grid,i,j,m,n);res=max(res,cnt);}}}return res;}int d[4][2]={1,0,0,1,-1,0,0,-1};int res,cnt;
};

LeetCode 695 岛屿的最大面积相关推荐

  1. LeetCode 695.岛屿的最大面积

    LeetCode 695.岛屿的最大面积 给你一个大小为 m x n 的二进制矩阵 grid . 岛屿 是由一些相邻的 1 (代表土地) 构成的组合,这里的「相邻」要求两个 1 必须在 水平或者竖直的 ...

  2. LeetCode 695. 岛屿的最大面积【c++/java详细题解】

    目录 1.题目 2.思路 3.c++代码 4.java代码 1.题目 给定一个包含了一些 0 和 1 的非空二维数组 grid . 一个 岛屿 是由一些相邻的 1 (代表土地) 构成的组合,这里的「相 ...

  3. LeetCode 695. 岛屿的最大面积(图的BFS/DFS)

    文章目录 1. 题目 2. 解题 2.1 BFS广度优先搜索 2.2 DFS深度优先搜索 1. 题目 给定一个包含了一些 0 和 1的非空二维数组 grid , 一个 岛屿 是由四个方向 (水平或垂直 ...

  4. LeetCode 695. 岛屿的最大面积

    文章目录 题目 题解 代码 题目 给定一个包含了一些 0 和 1 的非空二维数组 grid . 一个 岛屿 是由一些相邻的 1 (代表土地) 构成的组合,这里的「相邻」要求两个 1 必须在水平或者竖直 ...

  5. leetcode 695. 岛屿的最大面积 python

    题目描述: 输入的grid是一个数组,其中0代表海洋,1代表岛屿,题目要求寻找最大岛屿面积,即寻找grid中连续1的最大值. 题解: 采用深度优先搜索dfs的方法: 1.对位置[i,j],如果i j超 ...

  6. 力扣(Leetcode)695. 岛屿的最大面积(Java)带注释

    leetcode刷题695. 岛屿的最大面积 1.题目描述 2.解法 1.DFS(深度优先搜索) 2.DFS + 栈 1.题目描述 给你一个大小为 m x n 的二进制矩阵 grid . 岛屿 是由一 ...

  7. 每日一道leetcode(python)695. 岛屿的最大面积

    每日一道leetcode(python)695. 岛屿的最大面积 2021-08-21 给定一个包含了一些 0 和 1 的非空二维数组 grid .一个 岛屿 是由一些相邻的 1 (代表土地) 构成的 ...

  8. 岛屿问题 通用解-463.岛屿周长-200.岛屿数量-695.岛屿的最大面积-827.最大人工岛

    文章目录 岛屿问题 如何在网格上做DFS(通用解) 463.岛屿的周长 题目 题解 -通用模板 题解2 200.岛屿数量 题目 题解 695.岛屿的最大面积 题目 题解 827.最大人工岛 题目 题解 ...

  9. 岛屿类-网格类问题-DFS | 力扣695. 岛屿的最大面积

    思路参考上文: 岛屿类-网格类问题-DFS | 力扣200. 岛屿数量 本文讲解695. 岛屿的最大面积问题,属于常见的岛屿类-网格类问题 本题使用DFS的思想 题目 给定一个包含了一些 0 和 1 ...

最新文章

  1. Java中classpath配置
  2. 代码: html 页面小效果 (集合,待补充)
  3. MySQL事务及锁机制大揭秘 - 公开课笔记
  4. RUNOOB python练习题30 回文数
  5. 【转】Postman系列四:Postman接口请求设置环境变量和全局变量、测试沙箱和测试断言、测试集运行与导入数据文件
  6. MySQL操作之JSON数据类型操作详解
  7. 是否有必要使用外键?为什么不用外键?
  8. Netty工作笔记0011---Channel应用案例2
  9. 也说 Jquery+ASP.NET 实现开心网上传头像剪裁功能
  10. linux php zend load,在Linux系统中为PHP5.3安装Zend Guard Loader
  11. 你真的了解 MySQL 数据库的运行状况吗?
  12. 表达式引擎Aviator基本介绍及使用以及基于Aviator的规则引擎(附代码详细介绍)
  13. 读书笔记-财务报表资本结构分析
  14. 【数据结构与算法】之深入解析RSA加密算法的实现原理
  15. 机器学习(九)决策树,随机森林
  16. java吸血鬼数字_吸血鬼数字的简单实现
  17. Redis最详细讲解
  18. MySQL 中事务的实现原理全解析
  19. No space left on device: mod_rewrite: could not create rewrite_log_lock
  20. 嵌套相对比较通俗的解释(网页百度内容,非原创)

热门文章

  1. java圆形头像上传_Android自定义控件实例,圆形头像(图库 + 裁剪+设置),上传头像显示为圆形,附源码...
  2. 2.4g和5g要不要合并_请问千兆路由器,2.4g与5g是双频合一还是分开,该选择哪个?...
  3. 4米乘以12米CAD图_CAD做钣金件展开的原理你知道吗?
  4. pytorch分布式训练(一):torch.nn.DataParallel
  5. 最简易上手的Numpy学习笔记一
  6. Adobe illustrator 显示网格移除剪切蒙版和背景 - 连载 4
  7. 部分植物基因组数据库汇总
  8. 一款非常好用的音乐标签及管理工具:Yate for Mac
  9. .sh文件怎么写_typeScript 配置文件该怎么写?
  10. Qt文档阅读笔记-Broadcast Receiver Example解析