力扣 059 螺旋矩陣 II

2021-10-24 11:18:24 字數 610 閱讀 7862

給定乙個正整數 n,生成乙個包含 1 到 n

2n^2

n2所有元素,且元素按順時針順序螺旋排列的正方形矩陣。

示例:輸入: 3

輸出:[

[ 1, 2, 3 ],

[ 8, 9, 4 ],

[ 7, 6, 5 ]

]這是經典的陣列題,題目看起來簡單,但做起來的時候,很容易因為邊界的問題搞到自己十分混亂。這裡我推薦一下我的做法,首先是按圈來排列數字,然後把一圈拆成四個步驟,現實從左到右,然後再從上到下,再從右到左,最後從下到上這樣按順序的四步,完成一圈。按這樣的順序走,出錯的概率就會少一點。

class

solution

for(

int i = row +

1; i <= round; i++)if

(row < round && col < round)

for(

int i = round; i > row; i--)}

row++

; col++

; round--;}

return ans;}}

;

力扣59 螺旋矩陣 II

原題 這道題目為 這道題目的公升級款版本 可以沿用上道題目的逆方向思考。class solution def generatematrix self,n int list list int if n 0 return if n 1 return 1 matrix list range 1,n 2 1...

力扣 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...

力扣54 螺旋矩陣

原題 給你乙個m行n列的矩陣matrix,請按照 順時針螺旋順序 返回矩陣中的所有元素。個人理解 把自己比作正在行走的 棋子,按照右,下 左,上的順序進行移動。每一次碰到編輯觸發換方向,每一次還方向,走路的行為發生變化,走路的行為就是x,y的座標。設定好邊界和觸發邊界換向的條件和邊界的變化就可以解決...