Skip to content

Latest commit

 

History

History
74 lines (55 loc) · 1.63 KB

0054-spiral-matrix.adoc

File metadata and controls

74 lines (55 loc) · 1.63 KB

54. 螺旋矩阵

给你一个 mn 列的矩阵 matrix ,请按照 顺时针螺旋顺序,返回矩阵中的所有元素。

示例 1:

{image_attr}
输入:matrix = [[1,2,3],[4,5,6],[7,8,9]]
输出:[1,2,3,6,9,8,7,4,5]

示例 2:

{image_attr}
输入:matrix = [[1,2,3,4],[5,6,7,8],[9,10,11,12]]
输出:[1,2,3,4,8,12,11,10,9,5,6,7]

提示:

  • m == matrix.length

  • n == matrix[i].length

  • 1 <= m, n <= 10

  • -100 <= matrix[i][j] <= 100

思路分析

从回溯思想得到启发,使用递归来逐层推进。每次方法调用只负责指定层的遍历,向里推进层次的工作,交给递归来完成。这样避免了复杂的判断。

{image_attr}
一刷
link:{sourcedir}/_0054_SpiralMatrix.java[role=include]
二刷
link:{sourcedir}/_0054_SpiralMatrix_2.java[role=include]
三刷
link:{sourcedir}/_0054_SpiralMatrix_3.java[role=include]