[リートコード] 0059. スパイラルマトリックスII

Python、C++、JavaScript、SQL、TypeScript の多様な LeetCode ソリューションを探索してください。面接の準備、学習、複数のプログラミング言語でのコードの練習に最適です。 Github リポジトリ リンク

正の整数が与えられた場合 n、生成する ネクス マトリックス の要素で満たされた 1 に 2 位 螺旋状に。

 

例 1:

入力: n=3
出力: [[1,2,3],[8,9,4],[7,6,5]]

例 2:

入力: 1 の場合
出力: [[1]]

 

制約:

  • 1 <= n <= 20

パイソン

				
					#時間計算量: O(m*n) #空間計算量: O(m*n) from entering List class 解決策: def generateMatrix(self, n: int) -> List[List[int]]: grid = [[ 0 for _ in range(n)] for _ in range(n)] ROW = n COL = n direction = 1 row = 0 col = -1 i = 1 while ROW > 0 and COL > 0: for _ in range( COL): col += direction grid[row][col] = i i += 1 ROW -= 1 for _ in range(ROW): row += direction grid[row][col] = i i += 1 COL -= 1 方向 *= -1 グリッドを返す n = 3 print(Solution().generateMatrix(3)) n = 1 print(Solution().generateMatrix(1))
				
			
ja日本語