zoukankan      html  css  js  c++  java
  • 1、surrounded-regions

    Given a 2D board containing 'X' and 'O', capture all regions surrounded by 'X'. A region is captured by flipping all 'O's into 'X's in that surrounded region.

    For example,

    X X X X
    X O O X
    X X O X
    X O X X
    After running your function, the board should be:

    X X X X
    X X X X
    X X X X
    X O X X

    思路:(注意什么是被X包围的区域,开始的时候,题我都没读懂。。。)首先将边界上的O以及与边界O相连的O都标记为*,然后将其他的O都变为X,最后将N重新变为O即可

    深度优先搜索DFS:

    public class solution
    {
        public void solve(char[][] board) 
        {
            if(board.length <= 2 || board[0].length<=2)
                return;
            int row=board.length;
            int col=board[0].length;
            for(int i=0;i<row;i++)
            {
                DFS(board,i,0);
                DFS(board,i,col-1);
            }
            for(int i=0;i<col;i++)
            {
                DFS(board,0,i);
                DFS(board,row-1,i);
            }
            for(int i =0;i<row;i++)
            {
                for(int j=0;j<col;j++)
                {
                    if(board[i][j] == 'O')
                        board[i][j] ='X';
                    if(board[i][j] == '*')
                        board[i][j] ='O';
                }
            }
            
        }
        
        void DFS(char[][] board,int i,int j)
        {
            if(i<0 || i>=board.length || j<0 || j>=board[0].length)
                return;
            if(board[i][j] == 'X')
                return;
            if(board[i][j] == 'O')
            {
                board[i][j] == '*';
                DFS(board,i-1,j);
                DFS(board,i+1,j);
                DFS(board,i,j-1);
                DFS(board,i,j+1);
            }
        }
    }
  • 相关阅读:
    ie6支持最小高度
    jquery的css详解(二)
    jquery的curCSS方法
    jquery的css详解(一)
    Javascript中的Cookie操作
    C#和Javascript中 正则表达式使用的总结
    SQL JOIN
    C# 委托的”四步走“
    C# 知识笔记
    Jquery学习资源地址
  • 原文地址:https://www.cnblogs.com/westlife-11358/p/10185987.html
Copyright © 2011-2022 走看看