螺旋矩陣 leetcode

2021-08-22 02:28:59 字數 1311 閱讀 9096

螺旋矩陣

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

思路:之前自己也試過用座標設定邊界,最後發現自己真是*****,最後我是怎麼做的呢 ,我是把每一層的輸出當成乙個函式來做,之後呢,不斷的更新迭代我的矩陣需要輸出的大小,然放在乙個函式裡面去做

python**附上

def spiralorder(self, matrix):

""":type matrix: list[list[int]]

:rtype: list[int]

"""    

m = len(matrix)

if m==0:

return

n = len(matrix[0])

ans=

def prints(matrix,start,end,ans):

col = end[1]-start[1]+1

row = end[0] -start[0] +1

if col>1 and row>1:

for i in range(col-1):

for i in range(row-1):

for i in range(col-1):

for i in range(row-1):

elif col ==1:

for i in range(row):

else:

for i in range(col):

start = [0,0]

end = [m-1,n-1]

while start[0] <= end[0] and start[-1] <=end[-1]:

prints(matrix,start,end,ans)

start[0] +=1

start[1]+=1

end[0] -=1

end[1] -=1

return ans

Leetcode 螺旋矩陣

題目描述 給定乙個包含 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,...

LeetCode 螺旋矩陣

題目 給你乙個 m 行 n 列的矩陣 matrix 請按照 順時針螺旋順序 返回矩陣中的所有元素。輸入 matrix 1,2,3 4,5,6 7,8,9 輸出 1,2,3,6,9,8,7,4,5 思路 使用left,right,up,down四個邊界值來順時針遍歷矩陣,每迴圈一次邊界值往內縮1,即l...

LeetCode 螺旋矩陣II

給定乙個正整數 n,生成乙個包含 1 到 n 2 所有元素,且元素按順時針順序螺旋排列的正方形矩陣。示例 輸入 3 輸出 1,2,3 8,9,4 7,6,5 思路分析 請先查閱 leetcode 螺旋矩陣 這道題與列印螺旋矩陣一樣,按圈層進行操作,把遍歷修改為寫入即可。初始掃瞄座標 執行用時為 4 ...