package com.company;/**
* @author peichendong
*/publicclassLeeCode02{int n, m;publicstaticvoidmain(String[] args){char[][] chars=newchar[4][4];for(int i =0; i <4; i++){for(int j =0; j <4; j++){
chars[i][j]='x';if(i==1&& j==1){
chars[i][j]='0';}elseif(i==1&& j==2){
chars[i][j]='0';}elseif(i==2&& j==2){
chars[i][j]='0';}}}newLeeCode02().solve(chars);for(int i =0; i <4; i++){for(int j =0; j <4; j++){
System.out.print(chars[i][j]+" ");}
System.out.print("\n");}}publicvoidsolve(char[][] board){
n = board.length;if(n ==0){return;}
m = board[0].length;for(int i =0; i < n; i++){dfs(board, i,0);dfs(board, i, m -1);}for(int i =1; i < m -1; i++){dfs(board,0, i);dfs(board, n -1, i);}for(int i =0; i < n; i++){for(int j =0; j < m; j++){if(board[i][j]=='A'){
board[i][j]='O';}elseif(board[i][j]=='O'){
board[i][j]='X';}}}}publicvoiddfs(char[][] board,int x,int y){if(x <0|| x >= n || y <0|| y >= m || board[x][y]!='O'){return;}
board[x][y]='A';dfs(board, x +1, y);dfs(board, x -1, y);dfs(board, x, y +1);dfs(board, x, y -1);}}
被围绕的区域package com.company;/** * @author peichendong */public class LeeCode02 { int n, m; public static void main(String[] args) { char[][] chars=new char[4][4]; for (int i = 0; i < 4; i++) { for (int j =