LeetCode-105-岛屿的最大面积

news/2024/12/22 15:25:45/

题目描述:给定一个由 0 和 1 组成的非空二维数组 grid ,用来表示海洋岛屿地图。

一个 岛屿 是由一些相邻的 1 (代表土地) 构成的组合,这里的「相邻」要求两个 1 必须在水平或者竖直方向上相邻。你可以假设 grid 的四个边缘都被 0(代表水)包围着。

找到给定的二维数组中最大的岛屿面积。如果没有岛屿,则返回面积为 0 。

思路:依次遍历每个岛屿,求出每个岛屿的面积,最后得出面积最大的那个岛屿。问题在于如何求出岛屿的面积,用infect函数计算当遍历到数组某一位为1时,说明找到了一个岛屿,用递归的方法即可求出其面积,之后infect会将这个岛屿的每一位都设置为2,避免再次计算这个岛屿。

class Solution {public int maxAreaOfIsland(int[][] grid) {int maxNum =  0;int m = grid.length;int n = grid[0].length;for (int i = 0; i < m; i++){for (int j =0; j < n; j++){if (grid[i][j] == 1){maxNum = Math.max(maxNum, infect(grid, i , j, m, n));}}}return maxNum;}public int infect(int[][] grid, int i, int j, int m, int n){if (i < 0 || i >= m || j < 0 || j >= n || grid[i][j] != 1){return 0;}grid[i][j] = 2;return 1 + infect(grid, i-1, j, m, n)+ infect(grid, i+1, j, m, n)+ infect(grid, i, j-1, m, n)+ infect(grid, i, j+1, m, n);}
}

http://www.ppmy.cn/news/1462596.html

相关文章

【HarmonyOS尝鲜课】- 前言

面向人群 本课程适用于HarmonyOS应用开发的初学者。 有无经验的开发者都可以轻松掌握ArkTS语言声明式开发范式&#xff0c;体验更简洁、更友好的HarmonyOS应用开发旅程。 什么是HarmonyOS HarmonyOS&#xff08;鸿蒙操作系统&#xff09;是由华为技术有限公司开发的全场景分…

hls.js实现分片播放视频

前言&#xff1a;hls.js官网&#xff1a;hls.js - npm 一、demo——在HTML中使用 <audio id"audio" controls></audio><script src"https://cdn.jsdelivr.net/npm/hls.jslatest"></script> <script>document.addEventList…

css左右滚动互不影响

想实现左右都可以滚动&#xff0c;且互不影响。 只需要再左边的css里面 .threedlist {cursor: pointer;width: 280px;position: fixed;height: 100vh; /* 定义父容器高度 */overflow-y: auto; /* 只有在内容超过父容器高度时才出现滚动条 */} 如果想取消滚动条样式 .threedli…

elementUI使用el-tabs加el-form导致页面崩溃以及el-form里的input事件丢失问题

elementUI使用el-tabs加el-form导致页面崩溃以及el-form里的input事件丢失问题 解决 el-form外面包一层el-row和el-col&#xff0c;el-tabs也包一层 el-fom e-tabs

大模型融合推荐系统论文总结

Knowledge Prompt-tuning for Sequential Recommendation 论文介绍 本文主要介绍了一种新的序列推荐方法——Knowledge Prompt-tuning for Sequential Recommendation (KP4SR)&#xff0c;该方法通过引入外部知识库&#xff0c;使用知识提示来同时利用领域内和通用知识&#…

转运机器人负载最高可达 1000kg,重复精度高达±5mm

转运机器人&#xff0c;内部搭载ICD系列核心控制器&#xff0c;拥有不同的移载平台&#xff0c;负载最高可达 1000kg;重复精度高达5mm;支持 Wi-Fi漫游&#xff0c;实现更稳健的网络数据交互;无轨化激光 SLAM 导航&#xff0c;配合 3D 避障相机等多传感器进行安全防护。转运器人…

移动硬盘容量消失无法读取的解决方案

在数字化时代&#xff0c;数据的存储和备份变得尤为重要。移动硬盘作为一种便捷、大容量的存储设备&#xff0c;受到许多人的青睐。然而&#xff0c;有时我们可能会遭遇这样的问题&#xff1a;移动硬盘不显示容量且无法访问。这种情况无疑给我们的数据存储和管理带来了巨大的困…

Llama模型家族之使用 Supervised Fine-Tuning(SFT)微调预训练Llama 3 语言模型(四)通过命令方式微调

LlaMA 3 系列博客 基于 LlaMA 3 LangGraph 在windows本地部署大模型 &#xff08;一&#xff09; 基于 LlaMA 3 LangGraph 在windows本地部署大模型 &#xff08;二&#xff09; 基于 LlaMA 3 LangGraph 在windows本地部署大模型 &#xff08;三&#xff09; 基于 LlaMA…