当前位置: 首页 > news >正文

图论20(Leetcode1254.统计封闭岛屿的数目)

代码:

class Solution {static int[][] dirs = {{1,0},{-1,0},{0,1},{0,-1}};public int closedIsland(int[][] grid) {int num = 0; for(int i=0;i<grid.length;i++){for(int j=0;j<grid[0].length;j++){if(grid[i][j]==0){int[] start = {i,j};if(getIsland(start,grid)){num++;}}}}return num;}private boolean getIsland(int[] start,int[][] grid){boolean flag = true;grid[start[0]][start[1]] = -1;for(int i=0;i<dirs.length;i++){int x = start[0] + dirs[i][0];int y = start[1] + dirs[i][1];if(x<0||x==grid.length||y<0||y==grid[0].length)flag = false;if(x>=0&&x<grid.length&&y>=0&&y<grid[0].length&&grid[x][y]==0){int[] cur = {x,y};if(flag==true){flag = getIsland(cur,grid);}else{getIsland(cur,grid);}}}return flag;}
}

http://www.lryc.cn/news/173827.html

相关文章:

  • Docker 的基本概念和优势,以及在应用程序开发中的实际应用
  • 数据仓库整理
  • 《C++API设计》读书笔记(3):模式
  • 小程序搜索词优化:小陈运营的秘密武器
  • SpringSecurity 入门
  • 【每日一题Day335】LC1993树上的操作 | dfs
  • FPGA:卷积编码及维特比译码仿真
  • MySQL学习笔记4
  • JavaFX:窗体显示状态,模态非模态
  • C++17中std::filesystem::path的使用
  • 命令模式简介
  • Boost序列化指针
  • NIO简单介绍
  • linux进程杀不死
  • 5分钟带你搞懂RPA到底是什么?RPA能做什么?
  • 毫米波雷达 TI IWR1443 在 ROS 中进行 octomap 建图
  • 113双周赛
  • React 全栈体系(九)
  • 阈值化分割,对灰度级图像进行二值化处理(数字图像处理大题复习 P8)
  • vue3中withDefaults是什么
  • Android进阶之路 - 盈利、亏损金额格式化
  • 工业蒸汽量预测(速通一)
  • 机器学习的主要内容
  • 华为OD机试真题-分积木-2023年OD统一考试(B卷)
  • SpringBoot自动装配原理及分析
  • Android开发笔记 :理解Fragment
  • std::chrono获取当前秒级/毫秒级/微秒级/纳秒级时间戳
  • sh文件介绍及linux下执行
  • js-cookie使用 js深度克隆(判断引用类型是数组还是对象的方法)
  • [Pytorch]语义分割任务分类的实现