思路参考上文:
岛屿类-网格类问题-DFS | 力扣200. 岛屿数量

  • 本文讲解695. 岛屿的最大面积问题,属于常见的岛屿类-网格类问题
  • 本题使用DFS的思想


题目

给定一个包含了一些 0 和 1 的非空二维数组 grid
一个 岛屿 是由一些相邻的 1 (代表土地) 构成的组合,这里的「相邻」要求两个 1 必须在水平或者竖直方向上相邻。你可以假设 grid 的四个边缘都被 0(代表水)包围着
找到给定的二维数组中最大的岛屿面积。(如果没有岛屿,则返回面积为 0 )

示例

思路分析

思路参考上文:
岛屿类-网格类问题-DFS | 力扣200. 岛屿数量

代码

class Solution {public:int maxAreaOfIsland(vector<vector<int>>& grid) {int res = 0;for (int r = 0; r < grid.size(); r++) {for (int c = 0; c < grid[0].size(); c++) {if (grid[r][c] == 1) {int a = inArea(grid, r, c);res = res > a ? res : a;}}}return res;}int inArea(vector<vector<int>>& grid,int line,int row) {if (!Island(grid,line,row)) {return 0;}if (grid[line][row] != 1) {return 0;}grid[line][row] = 2; // 代表访问过return 1  // 一个  1 ;代表 1 面积+ inArea(grid, line - 1, row)+ inArea(grid, line + 1, row)+ inArea(grid, line, row - 1)+ inArea(grid, line, row + 1);}bool Island(vector<vector<int>>& grid,int line,int row) {return 0 <= line && line < grid.size() && 0 <= row && row < grid[0].size();}
};

结果

岛屿类-网格类问题-DFS | 力扣695. 岛屿的最大面积相关推荐

  1. 岛屿类-网格类问题-DFS | 力扣200. 岛屿数量

    本文讲解200. 岛屿数量问题,属于常见的岛屿类-网格类问题 本题使用DFS的思想 1 题目 给你一个由 '1'(陆地)和 '0'(水)组成的的二维网格,请你计算网格中岛屿的数量. 岛屿总是被水包围, ...

  2. 力扣 695. 岛屿的最大面积

    一.题目描述 给你一个大小为 m x n 的二进制矩阵 grid. 岛屿是由一些相邻的 1(代表土地)构成的组合,这里的相邻要求两个 1 必须在水平或者竖直的四个方向上相邻.你可以假设 grid 的四 ...

  3. 力扣200岛屿数量(DFS/BFS)

    200. 岛屿数量 - 力扣(LeetCode) (leetcode-cn.com) 1.DFS DFS的思路是,首先遍历整个表,找到1结果就加一,之后通过DFS将找到的1连通区域内的所有1变为0,代 ...

  4. #力扣LeetCode883. 三维形体投影面积 @FDDLC

    题目描述: 883. 三维形体投影面积 - 力扣(LeetCode) (leetcode-cn.com) Java代码: class Solution {public int projectionAr ...

  5. 力扣883.三维体投影面积

    题目描述 在 N * N 的网格中,我们放置了一些与 x,y,z 三轴对齐的 1 * 1 * 1 立方体.每个值 v = grid[i][j] 表示 v 个正方体叠放在单元格 (i, j) 上. 现在 ...

  6. 力扣——883. 三维形体投影面积(Java、JavaScript、C实现)

    三维形体投影面积 在 n x n 的网格 grid 中,我们放置了一些与 x,y,z 三轴对齐的 1 x 1 x 1 立方体. 每个值 v = grid[i][j] 表示 v 个正方体叠放在单元格 ( ...

  7. 力扣——LCP 37. 最小矩形面积(困难)

    刚看到本题时感觉难度不是很大,却出现在困难组里面.后面万万没想到提交测试的时候输入了将近20000条直线进行判断,如果直接上来就做的话,那肯定会: 接下来看题目: 题目 python代码 刚开始我的代 ...

  8. 岛屿问题,矩阵:DFS+标记剪枝+回溯

    深度优先搜索: 可以理解为暴力法遍历矩阵中所有字符串可能性.DFS 通过递归,先朝一个方向搜到底,再回溯至上个节点,沿另一个方向搜索,以此类推. 剪枝: 在搜索中,遇到 这条路不可能和目标字符串匹配成 ...

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

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

最新文章

  1. python脚本监控网站状态 - 赵海华_运维之路 - 51CTO技术博客
  2. Java 9幕后花絮:新功能从何而来?
  3. 普元连接mysql_普元EOS 案例 - 还有一行代码的个人空间 - OSCHINA - 中文开源技术交流社区...
  4. html中如何设置图片填充颜色渐变,实现SVG图标的渐变填充效果
  5. 格雷码基础和生成的几种方法
  6. 分享:尝试构建轻量级架构设计工具
  7. 谈谈大型分布式网站架构技术总结
  8. 卡塔尔称攻击卡塔尔通讯社黑客来自断交国
  9. 密码管理方案之SafeInCloud+坚果云同步
  10. 考研前夕 — 成人的世界里没有那么多童话
  11. python 操作微信_利用 Python 实现微信半自动化操作
  12. Linux arping :向相邻主机发送ARP请求
  13. 详解活动图计算关键路径、最早开始时间、最晚开始时间、冗余时间,C++ 程序实现
  14. create remote oracle odbc data source on win10
  15. STC单片机驱动TM1640
  16. OpenCV+ Qt Designer 开发人脸识别考勤系统
  17. jquery-1.8.3中的BUG typeError:elem.nodeName.toLowerCase is not a function
  18. vue3项目安装使用scss
  19. Qt调色板:QPalette说明和示例
  20. 安装proxmox pve

热门文章

  1. TLSNotary中心化预言机(2) 核心功能
  2. C++(九)——职工信息管理系统
  3. 2019天梯赛(总结-无题解)
  4. 深入了解Kubernetes CRD开发工具kubebuilder
  5. 常见的上传绕过以及解析漏洞
  6. Gossip算法原理
  7. Request模块基本常识
  8. 2020-11-26((《深入理解计算机系统》多级页表详解)补充)
  9. web安全101之如何理解XXE?
  10. 【网络安全】无需SOCKS支持,帮助广大渗透测试人员建立一条隐蔽的通信信道