class Solution:
def numIslands(self, grid: List[List[str]]) -> int:
m = len(grid)
n = len(grid[0])
res = 0
def dfs(x, y):
if grid[x][y] == '1':
grid[x][y] = '0'
else:
return
if x > 0:
dfs(x - 1, y)
if x < m - 1:
dfs(x + 1, y)
if y > 0:
dfs(x, y - 1)
if y < n - 1:
dfs(x, y + 1)
for i in range(m):
for j in range(n):
if grid[i][j] == '1':
dfs(i, j)
res += 1
return res
手撕7_dfs/bfs_岛屿数量
于 2024-04-12 00:47:54 首次发布
这段代码展示了如何使用深度优先搜索算法在给定的二维网格中计数独立的陆地区域(islands),即1表示陆地的单元格。
摘要由CSDN通过智能技术生成