Java: Улитка

Java: Массивы 2 сообщения
Обновлено: 04 мая, 12:12
32
Студента
75%
Завершения

Матрицу можно представить в виде двумерного массива. Например, массив new int[][] {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}} — это отображение матрицы:

1 2 3
4 5 6
7 8 9

src/main/java/io/hexlet/App.java

Реализуйте публичный статический метод buildSnailPath(), который принимает на вход матрицу целых чисел и возвращает массив элементов матрицы по порядку следования от левого верхнего элемента по часовой стрелке к внутреннему. Движение по матрице напоминает улитку:

Путь улитки

int[][] matrix = {
    {1, 2, 3, 4},
    {5, 6, 7, 8},
    {9, 10, 11, 12}
};
var result = App.buildSnailPath(matrix);
System.out.println(Arrays.toString(result));
// => [1, 2, 3, 4, 8, 12, 11, 10, 9, 5, 6, 7]

Подсказки

  • В процессе решения вам может понадобиться метод flatten(), который выпрямляет вложенный двумерный массив целых чисел, делая из него одномерный. Этот метод уже импортирован в файле App.java.

int[][] nested = {
    {1, 2},
    {3, 4},
};
var flattened = flatten(nested);
System.out.println(Arrays.toString(flattened)); // => [1, 2, 3, 4]

Для полного доступа к испытанию нужен базовый план

Базовый план откроет полный доступ ко всем курсам, упражнениям и урокам Хекслета, проектам и пожизненный доступ к теории пройденных уроков. Подписку можно отменить в любой момент.

Получить доступ
900
упражнений
2000+
часов теории
3200
тестов