leetcode習題集 54 螺旋矩陣

2021-09-19 14:24:34 字數 1123 閱讀 1198

給定乙個包含 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]

public

class

p54_spiralmatrix

//m行

int m = matrix.length;

//n列

int n = matrix[0]

.length;

if(n==1)

return r;

}for

(int i =

0; i <

1+ m /

2; i++

)//右邊框

if(j >0)

for(

int a =

0; a < k; a++

)//下邊框

if(k >=0)

for(

int a =

0; a < j; a++

)//左邊框

if(j >1)

for(

int a =

0; a < k; a++)if

(j <=

0|| k <=0)

}return r;

}}

思路:

該題為leetcode習題集——48. 旋轉影象的變體,即使得nxn的矩陣變成了nxm矩陣,大致的思路還是一致的,都需要一層一層的去列印。

注意:上邊框永遠是首先需要列印的

右邊框需要本層橫邊數字個數大於0

下邊框需要豎邊數字個數大於等於0

左邊框需要橫邊數字個數大於1

Leetcode習題集 鍊錶

這裡記錄一些我刷題的思路方便之後進行複習重溫,同時也方便進行新增 p141 環形鍊錶 class solution listnode reverse listnode head return pre 使用翻轉鍊錶,判斷返回的指標與傳進的指標是否相同,時間複雜度是o n 可能 空間複雜度是o 1 cl...

leetcode習題集 56 合併區間

給出乙個區間的集合,請合併所有重疊的區間。示例 1 輸入 1,3 2,6 8,10 15,18 輸出 1,6 8,10 15,18 解釋 區間 1,3 和 2,6 重疊,將它們合併為 1,6 示例 2 輸入 1,4 4,5 輸出 1,5 解釋 區間 1,4 和 4,5 可被視為重疊區間。public...

leetcode習題集 65 有效數字

驗證給定的字串是否可以解釋為十進位制數字。例如 0 true 0.1 true abc false 1 a false 2e10 true 90e3 true 1e false e3 false 6e 1 true 99e2.5 false 53.5e93 true 6 false 3 false ...