二:思路

1.这里的遍历数据方式为BFS广度遍历
2.当我们遇到一个‘1’的时候,我们就遍历他的左右上下(邻接点),如果是1那就入队,直到队列
为空为止。
3.我们记录每个岛屿的面积是采用 我们设置初始值为1,当每遇到一个邻接点为1就统计其个数
直到该队列为空,将其面积统计到一个容器当中,最后计算出最大值

三:上码

class Solution {public:int maxAreaOfIsland(vector<vector<int>>& grid) {/**思路:1.这里的遍历数据方式为BFS广度遍历2.当我们遇到一个‘1’的时候,我们就遍历他的左右上下(邻接点),如果是1那就入队,直到队列为空为止。3.我们记录每个岛屿的面积是采用 我们设置初始值为1,当每遇到一个邻接点为1就统计其个数直到该队列为空,将其面积统计到一个容器当中,最后计算出最大值*/int m = grid.size();//表示二维矩阵的行int n = grid[0].size();//表示二维矩阵的列vector<int> v;//存面积用的for(int i = 0; i < m; i++){for(int j = 0; j < n; j++){queue<pair<int,int> >q;int count = 0;if(grid[i][j] == 1){q.push({i,j});grid[i][j] = 0;//访问过一个结点 就将其设置为 '0' count = 1;}            //while(!q.empty()){auto temp = q.front();q.pop();int nr = temp.first;//代表行int nc = temp.second;//代表列//该节点的上方if(nr-1 >= 0 && grid[nr-1][nc] == 1){q.push({nr-1,nc});grid[nr-1][nc] = 0;count++;}//该节点的下方if(nr+1 < m && grid[nr+1][nc] == 1){q.push({nr+1,nc});grid[nr+1][nc] = 0;count++;}//该节点的左方if(nc-1 >= 0 && grid[nr][nc-1] == 1){q.push({nr,nc-1});grid[nr][nc-1] = 0;count++;}//该节点的右方if(nc+1< n && grid[nr][nc+1] == 1){q.push({nr,nc+1});grid[nr][nc+1] = 0;count++;}}v.push_back(count);}}sort(v.begin(),v.end());int temp = v.size() - 1; return v[temp];}
};

695.岛屿的最大面积(026)BFS相关推荐

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

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

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

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

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

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

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

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

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

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

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

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

  7. [695].岛屿的最大面积

    岛屿的最大面积 题目 函数原型 边界判断 算法设计:求最大的联通分量个数 算法设计:Flood Fill算法 算法设计:并查集 题目 给定一个包含了一些 0 和 1 的非空二维数组 grid. 一个 ...

  8. 695. 岛屿的最大面积

    岛屿的最大面积 给定一个包含了一些 0 和 1的非空二维数组 grid , 一个 岛屿 是由四个方向 (水平或垂直) 的 1 (代表土地) 构成的组合.你可以假设二维矩阵的四个边缘都被水包围着. 找到 ...

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

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

最新文章

  1. allan方差 imu_MEMS-IMU随机误差的Allan方差分析
  2. 2021-06-19 sklearn中的线性回归模型
  3. 三大特性--多态和多态性
  4. 谁与争锋-七款杀毒软件比较分析
  5. 获取系统当前时间(精确到毫秒)
  6. 计算机专业英语第五版课文翻译,计算机专业英语教程(第5版)翻译完整版
  7. 《Linux设备驱动开发详解(第3版)》(即《Linux设备驱动开发详解:基于最新的Linux 4.0内核》)前言
  8. ZZULIOJ.1137: 查找最大元素
  9. 戴尔笔记本安装win10系统步骤
  10. 基于python的电影在线_利用python实现电影推荐
  11. jmeter结果树为空_Jmeter查看结果树之查看响应的13种方法[详解]
  12. HEVC量化:色度QP值
  13. OCP考试如何确定考试中心
  14. 【数据中心管理】服务器的1U、2U是什么意思?42U机柜可以放多少台服务器
  15. 文件系统挂载选项journal
  16. 苹果7计算机有什么功能是什么,iPhone7有哪些新功能 iPhone7新功能汇总【详细介绍】...
  17. 启动Spring项目详细过程
  18. vivo深度学习AI算法面试
  19. bing搜索抓取错误警报列表
  20. 凭什么同窗好友Java开发都是三年,他能进大厂,工资还是我的双倍?

热门文章

  1. Android 整体设计及背后意义
  2. 【ArcGIS风暴】ArcGIS栅格数据(分区)统计方法总结
  3. C#趣味程序---百鸡百钱
  4. 判断输入的整数是否为素数_C语言 | 判断是否素数
  5. 怎么找到项目中所有同名的类_26岁转行程序员的成长历程--Day03从内存层面理解类和对象...
  6. 嵌入式开发linux工具,嵌入式Linux开发入门之MfgTool工具的使用
  7. python远程执行shell 防止注入脚本_解决 window 上python远程执行shell paramiko 下令 Permission denied...
  8. 这个国家太奇怪了!全球最落后的国家之一,却又是世界上最幸福的国家!
  9. 再现神人!仅仅只花4天半就解开了史上最难密码,这下整个圈子都炸开了.........
  10. 百般受虐!“波士屯动力”机器人这一次枪口对准人类