封闭形状所以说我们有0的空白格:算法来寻找和填补网格
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
而且你可以在上面绘制形状。 1表示填充的单元格。
1 1 1 1 0 0 0 0
1 0 0 1 0 0 0 0
1 0 0 1 0 0 0 0
1 1 1 1 0 0 0 0
0 0 0 0 0 0 0 0
0 1 1 0 0 1 1 1
1 0 0 1 0 1 0 0
0 1 1 0 0 1 0 0
如果四向填充算法不会泄漏并填充形状外的任何单元格,则认为该形状是封闭的。形状不能将网格的边界用作其一侧。因此,如果我们填写了所有在这个网格2S封闭的形状,我们将有:
1 1 1 1 0 0 0 0
1 2 2 1 0 0 0 0
1 2 2 1 0 0 0 0
1 1 1 1 0 0 0 0
0 0 0 0 0 0 0 0
0 1 1 0 0 1 1 1
1 2 2 1 0 1 0 0
0 1 1 0 0 1 0 0
实施洪水填充算法是容易的,但我不能想出一个办法来(编程)填写在网格中所有封闭的任意形状。是否有任何类型的算法或搜索可以用于此目的?