首页 > 编程语言 >[Python手撕]岛屿的最大面积

[Python手撕]岛屿的最大面积

时间:2024-11-27 11:04:02浏览次数:7  
标签:Python List 面积 岛屿 int grid

LCR 105. 岛屿的最大面积

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

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

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

class Solution:
    def maxAreaOfIsland(self, grid: List[List[int]]) -> int:

        def dfs(x,y):
            if 0<=x<n and 0<=y<m and grid[x][y] == 1:
                grid[x][y] = 0
                return 1+dfs(x+1,y)+dfs(x, y+1)+dfs(x-1,y)+dfs(x,y-1)
            else:
                return 0

        n = len(grid)
        m = len(grid[0])

        maxArea = 0
        for i in range(n):
            for j in range(m):
                if grid[i][j] == 1:
                    maxArea = max(maxArea,dfs(i,j))

        return maxArea

标签:Python,List,面积,岛屿,int,grid
From: https://www.cnblogs.com/DCFV/p/18571877

相关文章

  • python 接口自动化面试宝典
    python接口基础语法(一)python中的tuplelistsetdict在测试中的应用1.Tuple(元组):元组是不可变的序列,这使得它非常适合在测试中表示固定的、不会改变的数据集2.List(列表):列表是可以修改的序列,因此它是进行各种算法和数据操作的好工具3.Set(集合):集合是无序且不重复元素的......
  • python中urllib库和requests库的选择
    python中urllib和requests是两个最常用的库。它们都能够发送HTTP请求,但在使用方式、功能和效率上存在一些差异。一、urllib库urllib是Python标准库中的一个模块,用于发送HTTP请求。它提供了一个简单的接口来发送GET、POST等请求,并获取响应。urllib提供了一些基本的HTTP请求方......
  • 大数据学习记录,Python基础(1)
    修改pip源由于直接从python服务器下载各种插件速度较慢,我们可以通过修改下载地址的方法提高下载速度修改pip源找到系统盘下C:\Users\用户名\AppData\Roaming,APPData可能是隐藏文件,需要将隐藏关闭;查看在Roaming文件夹下有没有一个pip文件夹,如果没有创建一个;进入pip文件夹,创建一......
  • python-enumerate枚举
    对于一个可迭代的(iterable)/可遍历的对象(如列表、字符串),enumerate将其组成一个索引序列,利用它可以同时获得索引和值enumerate多用于在for循环中得到计数 语法以下是enumerate()方法的语法:enumerate(sequence,[start=0])sequence--一个序列、迭代器或其他支持迭......
  • c++ 程序来计算三角形的面积(Program to find area of a triangle)
    给定一个三角形的边,任务是求出该三角形的面积。例如: 输入:a=5,b=7,c=8输出:三角形面积为17.320508输入:a=3,b=4,c=5输出:三角形面积为6.000000方法:可以使用以下公式简单地计算三角形的面积。其中a、b和c是三角形边长, s=(a+b+c)/2 下面是上......
  • java 程序来计算三角形的面积(Program to find area of a triangle)
    给定一个三角形的边,任务是求出该三角形的面积。例如: 输入:a=5,b=7,c=8输出:三角形面积为17.320508输入:a=3,b=4,c=5输出:三角形面积为6.000000方法:可以使用以下公式简单地计算三角形的面积。其中a、b和c是三角形边长, s=(a+b+c)/2 下面是上......
  • C# 程序来计算三角形的面积(Program to find area of a triangle)
     给定一个三角形的边,任务是求出该三角形的面积。例如: 输入:a=5,b=7,c=8输出:三角形面积为17.320508输入:a=3,b=4,c=5输出:三角形面积为6.000000方法:可以使用以下公式简单地计算三角形的面积。其中a、b和c是三角形边长, s=(a+b+c)/2 下面是......
  • Python dlib下载
    1下载dlib前的准备工作1.1Python3我是以前下的1.2然后是Python官网推荐的包管理Guides-PythonPackagingUserGuide1.2.1pippip我以前也下过了(好像还换了源)没下的话,官网给了下载方式。下面是Windows系统的:py-mensurepip--default-pip1.2.2更新pip,se......
  • 【数据可视化入门】Python散点图全攻略:Matplotlib、Seaborn、Pyecharts实战代码大公开
    数据可视化入门-系列文章目录Python散点图全攻略:Matplotlib、Seaborn、Pyecharts实战代码大公开!文章目录数据可视化入门-系列文章目录Python散点图全攻略:Matplotlib、Seaborn、Pyecharts实战代码大公开!前言1.Matplotlib:基础绘图库2.Seaborn:基于Matplotlib的高级绘......
  • 量化交易Python代码:如何轻松下载可转债基本信息
    哈喽,大家好,我是木头左!可转债作为一种兼具债券和股票特性的投资工具,一直备受投资者的关注。今天,我将向大家介绍一种简单而有效的方法,通过Python代码来下载可转债的基本信息。为什么要另外下载可转债基本信息?虽然XtQuant.XtData行情模块get_cb_info(stockcode)可以获取......