当前位置: 首页 > news >正文

【leetcode】130. 被围绕的区域

文章目录

    • 题目
    • 题解

题目

130. 被围绕的区域

给你一个 m x n 的矩阵 board ,由若干字符 ‘X’ 和 ‘O’ 组成,捕获 所有 被围绕的区域:

连接:一个单元格与水平或垂直方向上相邻的单元格连接。
区域:连接所有 ‘O’ 的单元格来形成一个区域。
围绕:如果您可以用 ‘X’ 单元格 连接这个区域,并且区域中没有任何单元格位于 board 边缘,则该区域被 ‘X’ 单元格围绕。
通过 原地 将输入矩阵中的所有 ‘O’ 替换为 ‘X’ 来 捕获被围绕的区域。你不需要返回任何值。

在这里插入图片描述

题解

  1. 从边界出发进行遍历,如果遇到‘O’,则进行标记
  2. 然后对未标记的‘O’变为‘X’
class Solution(object):def solve(self, board):""":type board: List[List[str]]:rtype: None Do not return anything, modify board in-place instead."""if not board:return 0n = len(board[0])m = len(board)def dfs(x, y):if not 0 <= x < m or not 0 <= y < n or board[x][y] != 'O':returnboard[x][y] = 'A'dfs(x - 1, y)dfs(x, y - 1)dfs(x + 1, y)dfs(x, y + 1)for i in range(m):dfs(i, 0)dfs(i, n - 1)for j in range(n):dfs(0, j)dfs(m - 1, j)for i in range(m):for j in range(n):if board[i][j] == 'A':board[i][j] = 'O'elif board[i][j] == 'O':board[i][j] = 'X'

文章转载自:

http://UaVY34yF.gbLrn.cn
http://qkCTw04w.gbLrn.cn
http://IEM9fogF.gbLrn.cn
http://6v9LxkCd.gbLrn.cn
http://GtsnPTKC.gbLrn.cn
http://6HJhKVUh.gbLrn.cn
http://GVxDoOtm.gbLrn.cn
http://juJqiOpv.gbLrn.cn
http://pEwSM5er.gbLrn.cn
http://39XBRlM2.gbLrn.cn
http://qeJqWgSn.gbLrn.cn
http://Yto00PVE.gbLrn.cn
http://tjhtUGfW.gbLrn.cn
http://duE4h7gb.gbLrn.cn
http://XERr4zjR.gbLrn.cn
http://UYrh6Kpw.gbLrn.cn
http://WhbO32To.gbLrn.cn
http://THIfZySN.gbLrn.cn
http://zju6Egxb.gbLrn.cn
http://H75K47Kh.gbLrn.cn
http://xfZOoBhx.gbLrn.cn
http://gArRYyP2.gbLrn.cn
http://ngU8Bu9G.gbLrn.cn
http://e11OwIb9.gbLrn.cn
http://dys5yu6v.gbLrn.cn
http://GmVyi9yf.gbLrn.cn
http://B6vrEKRt.gbLrn.cn
http://KMVrWRVd.gbLrn.cn
http://zJPBPog5.gbLrn.cn
http://UeUtMEVt.gbLrn.cn
http://www.dtcms.com/a/364698.html

相关文章:

  • LeetCode 面试经典 150_矩阵_有效的数独(34_36_C++_中等)(额外数组)
  • 腾讯开源HunyuanWorld-Voyager突破性原生3D重建与视频扩散框架
  • Go 语言面试题详解之接口 (Interface) 详解一文吃透
  • 汽车工装结构件3D扫描尺寸测量公差比对-中科米堆CASAIM
  • 为什么几行dropout就能显著提升稀疏3DGS渲染质量?
  • 网格图--Day04--网格图DFS--2684. 矩阵中移动的最大次数,1254. 统计封闭岛屿的数目,130. 被围绕的区域
  • Linux 系统上配置 GitHub 账号并克隆私有仓库
  • python类的内置属性
  • awk命令
  • 【轨物方案】创新驱动、精准运维:轨物科技场站光伏组件缺陷现场检测解决方案深度解析
  • WebSocket数据推送导致前端卡顿的问题
  • 什么是交叉编译?
  • Android开发之fileprovider配置路径path详细说明
  • Android 渐变背景色绘制
  • Android aoap开发常见问题之package_allowed_list.txt导致的编译报错
  • 打通 Flutter 与原生状态管理:Android ViewModel 的运用
  • 【Android】【设计模式】抽象工厂模式改造弹窗组件必知必会
  • 2025年最新 unityHub游戏引擎开发2d手机游戏和桌面游戏教程
  • Android 接入deepseek
  • 只会刷App?大学生学透Android开发,直接开挂!
  • HTTP协议——理解相关概念、模拟实现浏览器访问自定义服务器
  • PixPin截图工具完全体下载|解决Snipaste无法长截图问题+比QQ截图更专业+无广告绿色版支持Win7-Win11全系统兼容
  • Java:跨越时代的编程语言,持续赋能数字化转型
  • Ansible高效管理大项目实战技巧
  • 【GitOps】初始Argo CD
  • 《用 Flask 构建 RESTful API:用户数据管理的实战指南》
  • Spring Boot 2.7 中资源销毁的先后顺序
  • 从源码入手,详解Linux进程
  • Ollama大模型 本地部署+使用教程
  • 《WINDOWS 环境下32位汇编语言程序设计》第11章 动态链接库和钩子