[리트코드] 0054. 나선형 매트릭스

Python, C++, JavaScript, SQL 및 TypeScript의 다양한 LeetCode 솔루션을 살펴보세요. 여러 프로그래밍 언어로 인터뷰 준비, 학습 및 코드 연습에 적합합니다. Github 레포 링크

주어진 xn 행렬, 반품 의 모든 요소 행렬 나선형으로.

 

예시 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]

 

제약:

  • m == 행렬.길이
  • n == 행렬[i].길이
  • 1 <= m, n <= 10
  • -100 <= 행렬[i][j] <= 100

파이썬

				
					# 시간 복잡도: O(m*n) # 공간 복잡도: O(1) 입력 가져오기 목록 클래스 솔루션: def 나선형Order(self, 행렬: List[List[int]]) -> List[int]: ROW = len (행렬) COL = len(matrix[0]) 방향 = 1 행 = 0 col = -1 결과 = [] while ROW > 0 및 COL > 0: for _ in range(COL): col += 방향 result.append (matrix[row][col]) ROW -= 1 for _ in range(ROW): 행 += 방향 result.append(matrix[row][col]) COL -= 1 방향 *= -1 반환 결과 행렬 = [[1, 2, 3], [4, 5, 6], [7, 8, 9]] print(Solution().spiralOrder(matrix)) 행렬 = [[1, 2, 3, 4], [ 5, 6, 7, 8], [9, 10, 11, 12]] print(Solution().spiralOrder(matrix))
				
			
ko_KR한국어