矩阵中的连通分量标记

时间:2016-07-27 10:08:45

标签: matrix components

我试图做以下事情 给出以下矩阵(其中1是空单元,0是障碍):
0 0 1 1
1 0 0 0
1 0 1 1
1 1 0 0
我希望它变成这样:
0 0 1 1
2 0 0 0
2 0 2 2
2 2 0 0

我需要做的是标记所有连接的组件(空闲空间)。 我已经尝试做的是编写一个名为isConnected()的函数,该函数获取两个单元格的索引并检查它们之间是否存在连接路径。通过在矩阵上的每个空单元格上重复此函数n ^ 2次,我可以标记所有连接的空格。但是由于这个算法的时间复杂度很差(n ^ 2 * n ^ 2 * O(isConnected()))我更喜欢使用别的东西。
我希望这些图片能更好地解释我想要完成的事情:

enter image description here

enter image description here

enter image description here

0 个答案:

没有答案