给定一个NxN二维数组,返回从最外层元素到中间元素顺时针排列的数组元素,如下图所示。
上面这个5×5的矩阵,按照回形遍历的方法得到的结果为:1,2,3,4,5,10,15,20,25,24,23,22,21,16,11,6,7,8,9,14,19,18,17,12,13。
输入样例:
array = [[1, 2, 3, 4],
[5, 6, 7, 8],
[9, 10, 11, 12],
[13, 14, 15, 16]]
输出样例:
[1, 2, 3, 4, 8, 12, 16, 15, 14, 13, 9, 5, 6, 7, 11, 10]
算法思路:
- 首先读取矩阵里的第一个数组
- 然后把它删去
- 接下来逆时针旋转矩阵90度
- 然后再读取调整后矩阵里的第一个数组
- 重复上面的操作直到矩阵为空。