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