0

我有以下需要解决的问题:

假设您有一个 5x5 的栅格/网格,其中填充了 a 和 b:

a a a b a 
a b a a a 
a a a a a 
b b b b b 
a a b a a 

当我触发(单击)这些“腔室”之一时,我想更改该腔室的值以及包含相同值(水平和垂直)的所有连接腔室。

假设我想将值更改为 y。

当我触发(单击)位置 [2][1](第三位置第二行)上的“a”时,我希望栅格/网格看起来像这样:

y y y b y 
y b y y y 
y y y y y 
b b b b b 
a a b a a 

注意底部的a。他们不应该被改变(他们没有连接)。

处理这个问题的最佳方法是什么?使用多维数组是否足够好?或者我应该使用 hashmap/arraylist 吗?是否每个“腔室”都需要包含对连接腔室的引用?

什么是“美丽”、高效的方式来做到这一点?

4

1 回答 1

1

使用多维数组是否足够好?

多维数组足以解决这个问题和您的知识。

Does every "chamber" need to contain references to the connecting chambers?

不,它没有任何参考,因为您可以通过添加/减去当前单元格的位置来计算其他单元格的位置。

什么是“美丽”、高效的方式来做到这一点?

刚开始工作。试着回答你在做的时候提出的问题。

于 2013-11-12T16:30:08.783 回答