給定乙個包含 m x n 個元素的矩陣(m 行, n 列),請按照順時針螺旋順序,返回矩陣中的所有元素。
示例 1:
輸入:[
[ 1, 2, 3 ],
[ 4, 5, 6 ],
[ 7, 8, 9 ]
]輸出: [1,2,3,6,9,8,7,4,5]
示例 2:
輸入:[
[1, 2, 3, 4],
[5, 6, 7, 8],
[9,10,11,12]
]輸出: [1,2,3,4,8,12,11,10,9,5,6,7]
記錄而已
class
solution
int rowi =
0, roli =
0, maxrow = matrix[0]
.length -
1, maxrol = matrix.length -1;
while
(rowi <= maxrow && roli <= maxrol)
rol++
; row--;if
(rol > maxrol)
while
(rol <= maxrol)
row--
; rol--;if
(row < rowi)
while
(row >= rowi)
row++
; rol--
;while
(rol > roli)
rowi++
; roli++
; maxrol--
; maxrow--;}
return n;
}}
力扣54 螺旋矩陣
原題 給你乙個m行n列的矩陣matrix,請按照 順時針螺旋順序 返回矩陣中的所有元素。個人理解 把自己比作正在行走的 棋子,按照右,下 左,上的順序進行移動。每一次碰到編輯觸發換方向,每一次還方向,走路的行為發生變化,走路的行為就是x,y的座標。設定好邊界和觸發邊界換向的條件和邊界的變化就可以解決...
力扣解題思路 54 螺旋矩陣 矩陣遍歷 糾錯記錄
思路 把矩陣螺旋輸出。做法也很簡單,我們只需要每次輸出一圈後更新橫排的左右邊界和豎排的上下邊界即可,但是要保證左邊界小於等於右邊界,上邊界小於等於下邊界 public list spiralorder int matrix u for int i u i d i r for int i r i l ...
54 螺旋矩陣
給定乙個包含 m x n 個元素的矩陣 m 行,n 列 請按照順時針螺旋順序,返回矩陣中的所有元素。示例 1 輸入 1,2,3 4,5,6 7,8,9 輸出 1,2,3,6,9,8,7,4,5 示例 2 輸入 1,2,3,4 5,6,7,8 9,10,11,12 輸出 1,2,3,4,8,12,11...