0

我需要创建一个递增整数的二维数组,而增量会沿对角线方向改变方向。
我已经这样做了,对于 N=4(行数和列数),但我无法为任何 N 创建解决方案:http: //pastebin.com/XXue4KT8

输出示例:

示例

谁能给我指点和提示?我不是要求直接的解决方案。

4

1 回答 1

0

首先使用初始化矩阵array_fill()

$matrix = array_fill(0, $n, array_fill(0, $n, 0));

然后通过array_map(),设置为需要的值。((1,2),(3,4))这是一个应该生成的示例n = 2

$i = 0;
$matrix = array_map(function($row) use ($i) {
   return array_map(function($val) use ($i) {
       return ++$i;
   }, $row);
}, $matrix);

(或者,$matrix[$i][$j]在嵌套的 for 循环中迭代。)

于 2013-06-08T16:23:43.653 回答