【leetcode】surrended-regions
来源:互联网 发布:淘宝网天猫女西装外套 编辑:程序博客网 时间:2024/05/22 15:36
给定一个矩阵,包含X和O,将其中被X包围的O全部替换成X。
思路:
1、遍历四边上的O,并深度遍历与其相连的O,将这些O替换成*
2、将剩余的O变成X,将*变成O
代码:
public class Solution {
public void solve(char[][] board) {
if(board==null || board.length<=0 || board[0].length<=0)
return;
int rowNum = board.length;
int colNum = board[0].length;
for(int i=0;i<colNum;++i) {
dfs(board,0,i);
dfs(board,rowNum-1,i);
}
for(int i=0;i<rowNum;++i) {
dfs(board,i,0);
dfs(board,i,colNum-1);
}
for(int i=0;i<rowNum;++i) {
for(int j=0;j<colNum;++j) {
if(board[i][j]=='O') {
board[i][j] = 'X';
}
if(board[i][j]=='*') {
board[i][j] = 'O';
}
}
}
}
public void dfs(char[][]board,int row,int col) {
int rowNum = board.length;
int colNum = board[0].length;
if(board[row][col]=='O') {
board[row][col] = '*';
if(row>1) {
dfs(board,row-1,col);
}
if(row<rowNum-1) {
dfs(board,row+1,col);
}
if(col>1) {
dfs(board,row,col-1);
}
if(col<colNum-1) {
dfs(board,row,col+1);
}
}
}
}
- 【leetcode】surrended-regions
- LeetCode : Surrounded Regions
- [leetcode] Surrounded Regions
- leetcode 128: Surrounded Regions
- LeetCode 39: Surrounded Regions
- 【leetcode】Surrounded Regions
- LeetCode - Surrounded Regions
- LeetCode之Surrounded Regions
- leetcode:Surrounded Regions
- [LeetCode]Surrounded Regions
- LeetCode - Surrounded Regions
- [Leetcode]Surrounded Regions
- Leetcode Surrounded Regions
- [leetcode]Surrounded Regions
- leetcode Surrounded Regions
- Leetcode: Surrounded Regions
- LeetCode-Surrounded Regions
- [leetcode] Surrounded Regions
- LTE CDRX
- linux下设置免密登陆
- setCompoundDrawables使用
- js中Date日期格式转换以及时间和毫秒之间的转换
- 从人脑研究入手_使人工智能不再“四肢发达_头脑简单”
- 【leetcode】surrended-regions
- 文章标题
- 1小时轻松学会用Excel做数据分析
- AndroidStudio打包时的错误UnsupportedOperationException
- JavaScript正则表达式在线测试工具
- URL:统一资源定位符
- 最长公共子序列&回文字符串 nyoj动态规划
- php常见问题列表
- LTE DRX in IDLE