我有3个2d阵列(矩阵),0和1 -
对于每个阵列,我将按顺时针方向旋转4次,反时钟方向旋转4次并翻转数组并重复上述操作,对于每次迭代,我将重复其他阵列的步骤,依此类推将数组合并到建立一个对称或类型的魔方,但每边有5个元素。这意味着如果我想添加2个数组,则意味着数组1中的1个必须与数组2中的0相匹配。 以下结构 -
以下是我的3个阵列
0 0 1 0 1
1 1 1 1 1
0 1 1 1 0
1 1 1 1 1
0 1 0 1 1
-------------
0 1 0 1 0
0 1 1 1 0
1 1 1 1 1
0 1 1 1 0
0 0 1 0 0
-------------
1 0 1 0 0
1 1 1 1 1
0 1 1 1 0
1 1 1 1 1
0 1 0 1 0
-------------
这个问题是从我问How to solve 5 * 5 Cube in efficient easy way的问题演变而来的。
Consider my rotate methods are as follows -
rotateLeft()
rotateRight()
flipSide()
for (firstArray){
element = single.rotateLeft();
for(secondArray){
element2 = single.rotateLeft();
if(element.combine(element2){
for(thirdArray){
}
}
}
}
目前我修复了3个阵列,但是我必须如何准确有效地解决这个问题。