关于四维数组的知识

在看俄罗斯方块的时候,老师的代码出现了四维数组,二维数组还能理解那么一点点。我没有大学基础。请用简单的方法回答。谢谢。

这个四维数组,表示一个方块是放在4*4的大方块里,每个四元组代表一行的四个点,1表示有点,0表示没电,每4个四元组为一个4*4方块,每个形状有四种形态,就是四种变形方式,长条只有横竖两种,因此长条的四种形态两两重复
比如I:{1,0,0,0},{1,0,0,0},{1,0,0,0},{1,0,0,0}
o___
o___
o___
o___ 是个长条
{1,1,1,1},{0,0,0,0}{0,0,0,0}{0,0,0,0}
oooo
____
____
____ 是横版长条
再比如{0,1,0,0},{0,1,0,0},{1,1,0,0},.{0,0,0,0}
_o__
_o__
oo__ 是个L型追问

=。=我比较笨 你忙吗 可以加个Q给我详细解释解释吗 谢谢了

追答

最简单的办法,,你把数组的四个四元组从上到下排列,看看长的像什么就知道了。。
T的第一个
{1,1,1,0}
{0,1,0,0}
{0,0,0,0}
{0,0,0,0}
1所在的地方就是方块的形状。。这是一个T字形。。。同理其它的形状这样摆一下就明白是什么情况了

追问

我主要是想更详细的了解四维数组。如果没时间的话 可以 推荐下电子书或者什么的吗

追答

四维数组就是二维数组的延生。。四维数组可以转换成二维数组的。。任何数组都可以通过指针形式访问。建议先理解下数组和指针的关系 看看C PRIMER PLUS吧

追问

谢谢了。我去看看

温馨提示:答案为网友推荐,仅供参考
第1个回答  2021-10-17
里面的二维数组表示一个方块的一个形状,三维数组表示一个方块的所有形状,四维数组表示所有方块的所有形状。

另外,说一下被折叠的回答,如果类比于空间多维,四维立方体,它的每一个面都是三维立方体
第2个回答  2020-12-08
上过小学吧,四方形长方形知道吧,首先数组储存的一个个的字符(看着做点)一维数组相当于一排点(线)二维数组相当于一排线(面((正方形))三维数组相当于一排面(体(正方体))四维数组因为人的认知最多到正方体所以就会很难理解,但是你为什么不简化思维把每一个三维数组看成一个字符呢?所以说四维数组就是一排正方体(一串葫芦(一根绳上边穿着n个葫芦,每一个葫芦是一个三位数组)),那么五位数组就可以推出来了啊,知道推到n维只要能理解这个,几维都一样
相似回答