我正在寻找一个类似于循环循环的矩阵,但循环由外向内,而不是由内向外。任何人都可以帮助我为任何大小的矩阵执行此操作,最好是在 Ruby 中?
示例:在一个 3x4 矩阵中,我想从 [0,0] 开始向右移动,然后在到达 [3,0] 时向下移动,在 [3,2] 处向左移动,等等。
[0,0] [1,0] [2,0] [3,0]
[0,1] [1,1] [2,1] [3,1]
[0,2] [1,2] [2,2] [3,2]
移动顺序如下图:
0 1 2 3
9 10 11 4
8 7 6 5
输出将是:
[0,0], [1,0], [2,0], [3,0], [3,1], [3,2], [2,2], [1,2], [0,2], [0,1], [1,1], [2,1]