Спиральный обход матрицы

Medium
Обойдите матрицу m×n по спирали по часовой стрелке, начиная с левого верхнего угла (0,0). Верните элементы в порядке обхода одномерным списком.

1 → 2 → 3
         ↓
4 → 5   6
↑       ↓
7 ← 8 ← 9

Примеры:

Вход: [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
Выход: [1, 2, 3, 6, 9, 8, 7, 4, 5]
Объяснение: Внешний виток 1,2,3,6,9,8,7,4, затем центр 5 → [1,2,3,6,9,8,7,4,5].
Вход: [[1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12]]
Выход: [1, 2, 3, 4, 8, 12, 11, 10, 9, 5, 6, 7]
Объяснение: Сначала верхняя строка и правый столбец, затем низ и левый край, внутри остаётся [6,7] → [1,2,3,4,8,12,11,10,9,5,6,7].
Вход: [[1]]
Выход: [1]
Объяснение: Матрица 1×1 → [1].

Ограничения:

1 <= m, n <= 10 -100 <= matrix[i][j] <= 100

Теги:

Матрица Массивы

Комментарии (0)

Войдите, чтобы оставить комментарий

Пока нет комментариев. Будьте первым!