LeetCode第五十四題-螺旋矩陣(JAVA)

Spiral Matrix

問題簡介:

給定一個 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]

解法一:

確定上下左右四條邊的位置,在初始化的時候,上邊up就是0,下邊down就是m-1,左邊left是0,右邊right是n-1,然後我們進行while循環,先遍歷上邊,將所有元素加入結果res,然後上邊下移一即一行,如果此時up大於down,代表遍歷結束break。


LeetCode第五十四題-螺旋矩陣(JAVA)


複雜度分析:

時間複雜度:o(n)遍歷一遍二維數組

空間複雜度:o(n)存儲排序後的二維數組

小白刷題之路,請多指教— — 要麼大器晚成,要麼石沉大海


LeetCode第五十四題-螺旋矩陣(JAVA)



分享到:


相關文章: