二维矩阵的DFS算法框架

二维矩阵的DFS算法框架

关于岛屿的相似题目:

  1. 岛屿数量 -- 二维矩阵的dfs算法
  2. 封闭岛屿数量 -- 二维矩阵的dfs算法
  3. 统计封闭岛屿的数目
  4. 统计子岛屿
  5. 不同岛屿的数量
python 复制代码
# 二叉树遍历框架
def traverse(root):
    if not root:
        return 
    # 前序遍历
    traverse(root.left)
    # 中序遍历
    traverse(root.right)
    # 后序遍历


# 二维矩阵的DFS算法框架
def dfs_matrix(grid, i, j, visited):
    m, n = len(grid), len(grid[0])

    # 跳出递归条件
    if i < 0 or i >= m or j < 0 or j >= n:
        return

    if visited[i][j]:
        return

    visited[i][j] = True

    dfs_matrix(grid, i-1, j, visited)  # 上
    dfs_matrix(grid, i+1, j, visited)  # 下
    dfs_matrix(grid, i, j-1, visited)  # 左
    dfs_matrix(grid, i, j+1, visited)  # 右
    
相关推荐
LluckyYH1 天前
代码随想录Day 58|拓扑排序、dijkstra算法精讲,题目:软件构建、参加科学大会
算法·深度优先·动态规划·软件构建·图论·dfs
Mysticbinary11 天前
深度DFS 和 广度BFS搜索算法学习
dfs·bfs·遍历算法·深度算法·广度算法
Aurora_th17 天前
树与图的深度优先遍历(dfs的图论中的应用)
c++·算法·深度优先·图论·dfs·树的直径
南风与鱼21 天前
floodfill算法(一)
算法·dfs·floodfill
Jcqsunny1 个月前
[dp]答疑
c++·算法·动态规划·dfs·区间dp
花菜回锅肉1 个月前
hadoop dfs web页面访问增加鉴权
大数据·前端·hadoop·dfs
南风与鱼1 个月前
递归 与 dfs 综合练习(四)
算法·深度优先·dfs
清梦1234561 个月前
C++ 迷宫问题 题解
c++·算法·深度优先·dfs·深度优先遍历
Betty’s Sweet1 个月前
探索数据结构:图(二)之图的遍历,Kruskal与Prim算法
数据结构·深度优先··dfs·bfs·kruskal·prim
清梦1234562 个月前
洛谷 1道经典图论题目 题解
c++·算法·深度优先·图论·dfs·深度优先遍历·usaco