首页 > 其他分享 >leetcode200 岛屿数量

leetcode200 岛屿数量

时间:2023-10-17 10:12:47浏览次数:39  
标签:周长 岛屿 direct range grid visited 数量 leetcode200

链接

https://leetcode.cn/problems/number-of-islands/description/

思路

跟岛屿周长差不多...但我觉得这个比岛屿周长还简单。不知道为什么这个算中等题目,岛屿周长算简单题目

代码

class Solution:
    def numIslands(self, grid) -> int:
        if not grid or not grid[0]:
            return 0
        height, width = len(grid), len(grid[0])
        visited = [[False for i in range(width)] for i in range(height)]
        res = 0
        direct_x = [0, 1, 0, -1]
        direct_y = [1, 0, -1, 0]

        def dfs(i, j, visited):
            if visited[i][j] or grid[i][j] == '0':
                return
            visited[i][j] = True
            for k in range(4):
                new_x, new_y = i + direct_x[k], j + direct_y[k]
                if 0 <= new_x < height and 0 <= new_y < width and not visited[new_x][new_y] and grid[new_x][new_y] == '1':
                    dfs(new_x, new_y, visited)
        for i in range(height):
            for j in range(width):
                if not visited[i][j] and grid[i][j] == '1':
                    res += 1
                    dfs(i, j, visited)
        return res

 

标签:周长,岛屿,direct,range,grid,visited,数量,leetcode200
From: https://www.cnblogs.com/bjfu-vth/p/17769062.html

相关文章

  • 计算小于或等于n的非负整数区间包含的1的数量
    在许多编程面试中,我们可能会碰到各种不同的问题,要求我们分析给定的数据或条件,以得出特定的结果。其中一个常见的问题是,给定一个整数n,要求计算出小于或等于n的非负整数区间包含的1的数量。这个问题可以通过直接编程解决,也可以通过更复杂的数学方法解决。在本文中,我将介绍一种简单的P......
  • #yyds干货盘点# LeetCode程序员面试金典:用最少数量的箭引爆气球
    1.简述:有一些球形气球贴在一堵用XY平面表示的墙面上。墙面上的气球记录在整数数组 points ,其中points[i]=[xstart,xend] 表示水平直径在 xstart 和 xend之间的气球。你不知道气球的确切y坐标。一支弓箭可以沿着x轴从不同点 完全垂直 地射出。在坐标 x 处射出一......
  • [转载]jmeter - 如何在指定数量的线程失败后停止 Jmeter 测试
     原地址https://www.coder.work/article/7090277  我有一个事务Controller,它在我的Jmeter测试计划中有一个http请求。交易名称和url来自CSV文件。最后,总执行分为5个不同的事务。测试计划:测试计划-线程组-用户定义的变量总样本执行量为8000-10000。现在......
  • pgsql sql语句参数量太多报错
    批量入库pgsql的时候,发现pgsql一次只能传3万多参数,要么改数据库链接url的参数要么分批次的批量插入。 分批次批量插入: 1intlimit;//要切割成多少份2intMAX_NUMBER;//每份最多多少条数据34List<List<Integer>>splitList=Stream.iterate(0,n->n+1).......
  • GitHub发布2021年度报告:中国开发者数量全球第2 ,最受欢迎的语言是
    临近年底,各大平台年终报告频频发布。作为程序员,应该关注些什么呢?近日,全球最大开发者社区GitHub重磅发布了《2021年度Octoverse报告》,本报告首次结合了来自GitHub上,超过400万个代码库的数据,共有超过12000多名开发者参与问卷调查。在即将过去的2021年,开发者社区发生了哪些有趣......
  • spring扫描本项目包下类数量 方法数量
    importorg.junit.jupiter.api.Test;importorg.springframework.beans.factory.annotation.Autowired;importorg.springframework.boot.test.context.SpringBootTest;importorg.springframework.core.io.Resource;importorg.springframework.core.io.support.PathMatc......
  • R语言非线性动态回归模型ARIMAX、随机、确定性趋势时间序列预测个人消费和收入、用电
    全文链接:https://tecdat.cn/?p=33838原文出处:拓端数据部落公众号传统时间序列模型允许包含过去观察到的系列信息,但不允许客户包含其他可能相关的信息。例如,假期的影响、竞争对手的活动、法律变化、整体经济或其他外部变量可能解释了某些历史变动,并且可能导致更准确的预测。另一......
  • 如何处理单据保存/审核时提示:“更新即时库存时,基本单位数量与辅单位数量为一正一负,
     问题描述:其他出库单审核报错前提:库存是充足的。 问题分析:因为其他出库单是我从二开的单据下推过来的,我给【实发数量(库存辅助单位)】赋值了,  解决方案:取消红色框框的赋值,即可。原来的其他出库删除,重推。 完美。......
  • SQL SERVER查询数据库表的数量
    SELECTcount(*)FROMsys.objectsWHEREtype='U'  --统计表数量SELECTNAME FROMsys.objectsWHEREtype='U'     --列出表名称或者SELECTCOUNT(*)FROMSysObjectsWhereXType='U'  --统计表数量SELECTNameFROMSysObjectsWhereXType='U'......
  • 【免费】2023云栖大会门票开抢啦!数量有限,先到先得!
    ......