首页 > 其他分享 >200. 岛屿数量

200. 岛屿数量

时间:2025-01-09 15:43:53浏览次数:1  
标签:200 process self 岛屿 len grid ans 数量

  1. [题目链接](200. 岛屿数量 - 力扣(LeetCode))

  2. 解题思路:用感染函数,遇到1,岛屿数目就加1,然后递归把上下左右变成2(以免下次遇到相同的岛屿)

  3. 代码

    
    class Solution:
        
        # 感染函数,将[i, j]感染
        def process(self, grid, i, j):
            if i < 0 or i >= len(grid) or j < 0 or j >= len(grid[0]) or grid[i][j] != '1':
                return
            grid[i][j] = '2'
            self.process(grid, i - 1, j)
            self.process(grid, i + 1, j)
            self.process(grid, i, j - 1)
            self.process(grid, i, j + 1)
            
        
        def numIslands(self, grid: List[List[str]]) -> int:
    
            ans = 0
            for i in range(len(grid)):
                for j in range(len(grid[0])):
                   if grid[i][j] == '1':
                       ans += 1
                       self.process(grid, i, j)
            return ans
    

标签:200,process,self,岛屿,len,grid,ans,数量
From: https://www.cnblogs.com/ouyangxx/p/18662292

相关文章

  • AcWing算法基础课打卡 | 788 逆序对的数量
    学习C++从娃娃抓起!记录下AcWing刷过的题目,记录每一个瞬间。附上汇总贴:AcWing算法基础课打卡|汇总788逆序对的数量【题目描述】给定一个长度为nnn的整数数列,请你......
  • 蓝桥20092 录入成绩-分类讨论&正确性推理
    https://www.lanqiao.cn/problems/20092/learning/?page=1&first_category_id=1#当匹配到G1的时候,在什么条件下会导致它不能被视为国一?#11前面有偶数个G,分解为G,GG,GG...G1可能会导致G超过一个#1.1涉及到G的数量问题,数字前面有若干个G举例,若同时存在GG2,......
  • ASE200N03-ASEMI中低压N沟道MOS管ASE200N03
    编辑:llASE200N03-ASEMI中低压N沟道MOS管ASE200N03型号:ASE200N03品牌:ASEMI封装:TO-252最大漏源电流:160A漏源击穿电压:30V批号:最新RDS(ON)Max:1.8mΩ引脚数量:3沟道类型:N沟道MOS管芯片尺寸:MIL漏电流:恢复时间:ns芯片材质:封装尺寸:如图特性:中低压MOS管、N沟道MOS管工作结温:-5......
  • 覆铜宽度和电流大小之间的关系,掌握过孔大小与数量与电流大小的关系
    覆铜宽度和电流大小之间的关系,掌握过孔大小与数量与电流大小的关系在PCB(印刷电路板)设计中,覆铜宽度和过孔的大小与电流处理能力之间的关系是非常重要的。这些因素直接影响到电路的安全性、性能和热管理能力。以下是关于覆铜宽度、电流大小、过孔大小与数量与电流之间关系的详细......
  • Luogu P2292 HNOI2004 L 语言 题解 [ 紫 ] [ AC 自动机 ] [ 状压 dp ]
    L语言:很好的一道状压dp题。思路看到这题,首先可以想到一个很暴力的dp,设\(dp_i\)表示考虑到第\(i\)位能否被理解,暴力匹配字符串转移即可。第一个优化也很显然,暴力匹配字符串换成AC自动机即可。但是时间复杂度变成了\(O(m|T||S|)\)的,显然会被卡。状压与位运算优化......
  • [WC2006] 水管局长 题解
    最大值最小的路径肯定在最小生成树上,考虑用\(LCT\)维护最小生成树,只需要维护长度最长的边即可实现。由于\(LCT\)维护最小生成树不支持删边,所以采用倒序加边的方式处理。时间复杂度\(O(n\logn)\)。#include<bits/stdc++.h>#definefa(x)lct[x].fa#definefl(x)lct[x].f......
  • 西门子S7-400H冗余PLC与S7-200Smart建立S7通讯
    文章目录前言一、组态从站二、编写程序1.判断主、备CPU运行状态2.编写PUT/GET程序总结前言由于S7-400H是冗余CPU,与S7-200SmartPLC通讯,只能在400PLC程序中编写S7通讯程序。本文主要阐述如何通过Step7软件编写S7通讯程序,关于如何使用博图软件编写S7通讯程序,请参考......
  • Matlab2019a安装C2000 Processors超详细过程
    ⭐1.环境搭建⭐链接1EmbeddedCoderSupportPackageforTexasInstrumentsC2000Processors-FileExchange-MATLABCentral......
  • P3850 [TJOI2007] 书架
    P3850[TJOI2007]书架[TJOI2007]书架题目描述Knuth先生家里有个精致的书架,书架上有\(N\)本书,如今他想学到更多的知识,于是又买来了\(M\)本不同的新书。现在他要把新买的书依次插入到书架中,他已经把每本书要插入的位置标记好了,并且相应的将它们放好。由于Knuth年龄已大,......
  • P4175 [CTSC2008] 网络管理
    P4175[CTSC2008]网络管理Solution:存了半年,骂了半年的树上树套树还是在今天咬着牙写完了真是可恶首先我们来回顾一下如果不带修的话这题怎么做:对每个点维护一颗主席树,存rt->u这条路径上的边的权值。然后对于一个查询(x,y,k)在x+y-lca-fa[lca]这颗树上查第k大值.那么我......