我需要一个动态矩阵生成器类,它将返回一个int[4][4]
矩阵,值应该在 1 到 16 之间,并且不会有重复值。
矩阵解决方案将是这样的:
或者
如果您仔细观察矩阵图像,您会发现每个矩阵在矩阵值的位置都有特定的逻辑/模式。模式是什么并不重要,但保持模式很重要(这意味着应该有任何类型的模式)。目前我正在使用静态代码,例如:
// for the second image
int temp4[][] = { { 1, 2, 3, 4 }, { 12, 13, 14, 5 },
{ 11, 16, 15, 6 }, { 10, 9, 8, 7 } };
目前我有 3/4 的静态模式,但是静态实现这个是一种不好的方法,所以它应该是动态的,因为我需要随机模式运行时。
所以我的问题是:是否有可能做出这样的解决方案?代码是什么??如果您知道与此相关的链接,请发布它或发布原始代码。
提前致谢。
更新
这个问题的模式是什么意思?
如果您仔细遵循第一个矩阵,您会发现数字就像第一行:1,2,3,4 然后第二行:5,6,7,8 等等..
对于第二个矩阵,它的第一行是 1,2,3,4 然后它下降为 5,6,7 然后返回为 8,9,10 依此类推。
另一种模式可能是这样的第一列:1,2,3,4 然后第二列:5,6,7,8 所以矩阵看起来像:
1 5 9 13
2 6 10 14
3 7 11 15
4 8 12 16 .. 等等
因此我需要一个矩阵生成器,它将返回int[4][4]
从 1 到 16 的非重复值,并且值应该按顺序排列。另一种模式可能是:
和
上面2个的模式是这样的: