我怎样才能填充这样的数组:
1 2 3 4 5 6 7 8
20 21 22 23 24 9
19 30 31 32 25 10
18 29 28 27 26 11
17 16 15 14 13 12
Run Code Online (Sandbox Code Playgroud)
螺旋C#谢谢
Mat*_*t J 10
从元素(0,0)(左上角)开始遍历数组,向右移动(增加列索引).保持一个运行的计数器,每次填充元素时都会递增,以及您尚未填充的行和列的上限和下限.对于M列乘N列矩阵,行边界应为0和(M-1),并且列的边界为0和(N-1).向右走,直到你达到上限列,递减你的上行界限,向下直到你达到你的上行界限,递减你的上行界限,向左走直到你达到你的下列界限,增加你的下列界限,向上直到你达到你的下行界限,增加你的下限,并重复,直到你的上下行或列边界相等(或直到你的运行计数为M*N).