news 2026/3/3 12:45:13

【剑斩OFFER】算法的暴力美学——力扣 695 题:岛屿的最大面积

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
【剑斩OFFER】算法的暴力美学——力扣 695 题:岛屿的最大面积

一、题目描述

二、算法原理

思路:基于下面这个链接的题目,统计遍历过程中所有的岛屿个数就行

https://blog.csdn.net/2403_84958571/article/details/157102889?spm=1011.2415.3001.10575&sharefrom=mp_manage_link

三、代码实现

class Solution { vector<vector<bool>> tmp; int dx[4] = {0,0,-1,1}; int dy[4] = {1,-1,0,0}; int maxi; typedef pair<int,int> PII; public: int maxAreaOfIsland(vector<vector<int>>& grid) { tmp.resize(grid.size(),vector<bool>(grid[0].size(),false)); maxi = 0;//岛屿的面积 for(int i = 0; i < grid.size(); i ++) { for(int k = 0; k <grid[0].size(); k++) { if(grid[i][k] == 1 && tmp[i][k] == false) { Checkgrid(grid,i,k);//找到岛屿入口 } } } return maxi; } void Checkgrid(vector<vector<int>>& grid,int i,int k) { queue<PII> que;//使用层序遍历,查找相连的岛屿 que.push({i,k}); int count = 1;//同意岛屿个数 tmp[i][k] = true; while(que.size()) { auto [x,y] = que.front(); que.pop(); for(int i = 0; i < 4; i++) { int a = x + dx[i]; int b = y + dy[i]; if(a >= 0 && a < grid.size() && b >= 0 && b < grid[0].size() && grid[a][b] == 1 && tmp[a][b] == false) { que.push({a,b}); count++; tmp[a][b] = true; } } } maxi = max(maxi,count); } };
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/3/3 2:52:55

Java综合云门诊HIS信息管理系统源码 SaaS多租户 多门诊

目录 一、系统概述与技术架构 二、核心功能模块详解 &#xff08;一&#xff09;预约挂号模块 &#xff08;二&#xff09;门诊医生工作站模块 &#xff08;三&#xff09;门诊收费模块 &#xff08;四&#xff09;药房发药模块 &#xff08;五&#xff09;库存管理模块 …

作者头像 李华
网站建设 2026/3/2 21:45:17

AI测试工具:2026年软件测试工程师的变革性武器库

一、AI测试工具爆发的技术驱动力 2026年&#xff0c;AI测试工具已完成从"辅助工具"到"核心生产力"的跃迁。据Gartner最新报告&#xff0c;AI驱动的测试覆盖率每提升10%&#xff0c;企业可减少23%的线上事故。其底层技术演进呈现三大特征&#xff1a; 多模…

作者头像 李华
网站建设 2026/2/12 18:27:36

iOS 应用加固软件怎么选,从源码到IPA方案选择

第一次认真研究 iOS 应用加固软件&#xff0c;其实不是为了安全体系建设&#xff0c;而是遇到了一个很现实的问题&#xff1a; 项目已经进入维护期&#xff0c;版本节奏固定&#xff0c;但业务方突然提出最近有被拆包的风险&#xff0c;希望补一层保护。 当时团队里并没有现成方…

作者头像 李华