news 2026/4/29 13:24:12

Leetcode200岛屿数量

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Leetcode200岛屿数量

题目分析

要区分二维矩阵中的每个1,需要将二维问题转化为一维编号问题。

如果矩阵有m列,位于第i行、第j列的元素对应的一维编号为i乘以m加j。

先将所有的1建成小集合,遍历矩阵,遇到1时,如果其左边或者上边有1则进行合并,最后统计并查集中集合的数量就是岛的数量。

代码求解

publicstaticintnumIslands(char[][]board){intn=board.length;intm=board[0].length;build(n,m,board);for(inti=0;i<n;i++){for(intj=0;j<m;j++){if(board[i][j]=='1'){if(j>0&&board[i][j-1]=='1'){union(i,j,i,j-1);}if(i>0&&board[i-1][j]=='1'){union(i,j,i-1,j);}}}}returnsets;}publicstaticintMAXSIZE=100001;publicstaticint[]father=newint[MAXSIZE];publicstaticintcols;publicstaticintsets;publicstaticvoidbuild(intn,intm,char[][]board){cols=m;sets=0;for(inta=0;a<n;a++){for(intb=0,index;b<m;b++){if(board[a][b]=='1'){index=index(a,b);father[index]=index;sets++;}}}}publicstaticintindex(inta,intb){returna*cols+b;}publicstaticintfind(inti){if(i!=father[i]){father[i]=find(father[i]);}returnfather[i];}publicstaticvoidunion(inta,intb,intc,intd){intfx=find(index(a,b));intfy=find(index(c,d));if(fx!=fy){father[fx]=fy;sets--;}}
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/23 4:47:20

OpenRGB:一站式解决多品牌RGB设备控制难题的专业方案

OpenRGB&#xff1a;一站式解决多品牌RGB设备控制难题的专业方案 【免费下载链接】OpenRGB Open source RGB lighting control that doesnt depend on manufacturer software. Supports Windows, Linux, MacOS. Mirror of https://gitlab.com/CalcProgrammer1/OpenRGB. Release…

作者头像 李华
网站建设 2026/4/29 8:36:27

CatServer终极部署指南:从零到精通的一键式搭建方案

你是否曾经为Minecraft服务器搭建而头疼&#xff1f;模组与插件难以共存&#xff1f;性能优化无从下手&#xff1f;今天&#xff0c;让我们一起来探索CatServer的魔力&#xff0c;这个集Forge、Bukkit和Spigot于一身的超级服务器核心将彻底改变你的游戏体验&#xff01; 【免费…

作者头像 李华
网站建设 2026/4/25 8:44:51

如何快速评估代码复杂度:Lizard工具的完整使用指南

如何快速评估代码复杂度&#xff1a;Lizard工具的完整使用指南 【免费下载链接】lizard A simple code complexity analyser without caring about the C/C header files or Java imports, supports most of the popular languages. 项目地址: https://gitcode.com/gh_mirror…

作者头像 李华
网站建设 2026/4/25 23:38:18

github镜像license说明明确IndexTTS2开源协议

IndexTTS2 深度解析&#xff1a;中文情感语音合成的开源实践 在智能语音技术日益渗透日常生活的今天&#xff0c;我们早已习惯了手机助手的温柔提醒、车载导航的清晰播报&#xff0c;甚至虚拟主播流畅的直播解说。但你是否曾想过&#xff0c;这些“会说话”的AI背后&#xff0c…

作者头像 李华
网站建设 2026/4/29 10:16:50

幽冥大陆(九十一 ) 水果识别在线检测模型netron —东方仙盟练气期

在科技与传统认知交织的当下&#xff0c;机器学习模型的训练恰似东方仙盟弟子的修炼之路 —— 数据源是修炼的 “灵脉矿石”&#xff0c;Python 代码是 “修炼心法”&#xff0c;Win7 环境则是稳固的 “修炼洞府”&#xff0c;唯有步步为营、循法修炼&#xff0c;方能练就 “办…

作者头像 李华
网站建设 2026/4/26 10:20:43

网页图片展示的革命性升级:Lightbox2技术深度解析

网页图片展示的革命性升级&#xff1a;Lightbox2技术深度解析 【免费下载链接】lightbox2 THE original Lightbox script (v2). 项目地址: https://gitcode.com/gh_mirrors/li/lightbox2 在当今视觉主导的互联网时代&#xff0c;网页图片展示效果直接关系到用户体验和内…

作者头像 李华