矩阵中支持对角线相邻判定的封闭式空单元格池检测算法优化求助
矩阵中支持对角线相邻判定的封闭式空单元格池检测算法优化求助
我正在写一个算法,用来检测网格里那些完全被填充单元格(正交方向包围)、且不会延伸到网格边缘的连续空单元格区域,我把这类区域叫做“池”。
就像示例里展示的那样,网格中有三个池单元格——(1, 1)、(1, 3)和(2, 2),它们共同构成了唯一一个池。这里要特别说明:正交和对角相邻的池单元格都应该被视为同一个池的一部分。
[网格池示例:中间区域的三个空单元格被填充单元格完全包围,符合“池”的定义]
我已经实现了一个能部分解决问题的算法:它通过正交DFS来识别池单元格,也就是完全不考虑对角相邻的情况。
class Cell: x: int y: int is_filled: bool def __init__(self, x, y, is_filled): self.x = x self.y = y # 此处省略其他初始化代码
备注:内容来源于stack exchange,提问作者chocojunkie
相关产品推荐
相关产品推荐

