java在矩阵中查找单元格的相邻元素
我有一个25行13列的矩阵:
A B C D E F G
1 - - - - - - - - - - - 1 - - - - - - - - - - - 1
| x x x x x x x x x x x x x x x x x x x x x x x |
| x x x 1 - - - - - - - 1 - - - - - - - 1 x x x |
| x x x | x x x x x x x x x x x x x x x | x x x |
| x x x | x x x 1 - - - 1 - - - 1 x x x | x x x |
| x x x | x x x | x x x x x x x | x x x | x x x |
1 x x x 1 x x x 1 x x x x x x x 1 x x x 1 x x x 1
| x x x | x x x | x x x x x x x | x x x | x x x |
| x x x | x x x 1 - - - 1 - - - 1 x x x | x x x |
| x x x | x x x x x x x x x x x x x x x | x x x |
| x x x 1 - - - - - - - 1 - - - - - - - 1 x x x |
| x x x x x x x x x x x x x x x x x x x x x x x |
1 - - - - - - - - - - - 1 - - - - - - - - - - - 1
行和列被7分开,我将字母A-G放在顶部,以便更清晰可见。在矩阵中,我们有“1”。符号“1”表示从游戏https://en.wikipedia.org/wiki/Nine_men%27s_morris放置元素的可能位置。我想知道,如果有人给我一个值为“1”的单元格的(x,y),我怎么能找到所有相邻单元格的坐标列表
我试着找出单元格是否在内部矩形中,然后根据Ox和Oy直接计算偏移量,但没有成功
# 1 楼答案
一般来说,为了找到相邻的单元,我们可以使用以下结构:
请注意,上述代码可应用于没有边界的单元格。否则,您将超出数组索引范围
这是所有可能相邻单元的列表。 现在还不清楚你想对这些相邻的细胞做什么,所以这是我现在能提供的最多的信息
回答你的问题“如何找到所有相邻单元格的坐标列表?”
使用上述结构,可以将坐标存储在向量中,例如:
然后,一旦使用上述方法找到相邻的单元格,就可以执行以下操作