JZ29 顺时针打印矩阵
JZ29 顺时针打印矩阵
描述
输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每一个数字。
例如,如果输入如下4 X 4矩阵:
1 | [[1,2,3,4], |
则依次打印出数字:
1 | [1,2,3,4,8,12,16,15,14,13,9,5,6,7,11,10] |
数据范围:$0 <= matrix.length <= 100,0 <= matrix[i].length <= 100$
示例1
1 | 输入:[[1,2,3,4],[5,6,7,8],[9,10,11,12],[13,14,15,16]] |
示例2
1 | 输入:[[1,2,3,1],[4,5,6,1],[4,5,6,1]] |
题解
我讨厌模拟。按照题目模拟移动即可,创建访问记录矩阵记录访问过的元素,然后根据边界条件更改移动方向即可。
代码
1 | # -*- coding:utf-8 -*- |