【DFS】130.被围绕的区域

题目

法1:DFS

典型题目,牢记方法!

class Solution {
   
    public void solve(char[][] board) {
   
        int m = board.length, n = board[0].length;
        if (m == 0 || n == 0) {
   
            return;
        }
        boolean[][] visitedO = new boolean[m][n]; // 没有被围绕的'O'位置记录
        for (int i = 0; i < n; ++i) {
    // 首行
            dfs(board, visitedO, 0, i, m, n);
        }
        for (int i = 0; i < n; ++i) {
    // 末行
            dfs(board, visitedO, m - 1, i, m, n);
        }
        for (int i = 0; i < m; ++i) {
    // 首列
            dfs(board, visitedO, i, 0, m, n);
        }
        for (int i = 0; i < m; ++i) {
    // 末列
            dfs(board, visitedO, i, n - 1, m, n);
        }

        for (int i = 0; i < m; ++i) {
   
            for (int j = 0; j < n; ++j) {
   
                if (board[i][j] == 'O' && !visitedO[i][j]) {
   
                    board[i][j] = 'X';
                }
            }
        }
    }

    public void dfs(char[][] board, boolean[][] visitedO, int i, int j, int m, int n) {
   
        if (i >= 0 && i < m 
                && j >= 0 && j < n 
                && board[i][j] == 'O' 
                && !visitedO[i][j]) {
   
            visitedO[i][j] = true;
            dfs(board, visitedO, i - 1, j, m, n);
            dfs(board, visitedO, i + 1, j, m, n);
            dfs(board, visitedO, i, j - 1, m, n);
            dfs(board, visitedO, i, j + 1, m, n);
        }
    }
}

相关推荐

  1. DFS130.围绕区域

    2024-01-18 13:20:05       39 阅读
  2. 力扣:130. 围绕区域

    2024-01-18 13:20:05       36 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-01-18 13:20:05       17 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-01-18 13:20:05       16 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-01-18 13:20:05       15 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-01-18 13:20:05       18 阅读

热门阅读

  1. c# 学习笔记 - 异步编程

    2024-01-18 13:20:05       36 阅读
  2. IBM V5000 V7000更换控制器注意事项

    2024-01-18 13:20:05       35 阅读
  3. 页面嵌入iframe Cookie丢失问题解决

    2024-01-18 13:20:05       36 阅读
  4. python list.sort方法和内置函数sorted

    2024-01-18 13:20:05       34 阅读