Как вывести элементы массива в обратном порядке
Перейти к содержимому

Как вывести элементы массива в обратном порядке

Array. Reverse Метод

Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.

Изменяет порядок элементов в одномерном массиве Array или в части массива Array на обратный.

Перегрузки

Изменяет порядок подмножества элементов в одномерном массиве Array на обратный.

Изменяет порядок элементов во всем одномерном массиве Array на обратный.

Изменяет порядок последовательности элементов в одномерном общем массиве на обратный.

Изменяет порядок последовательности подмножества элементов в одномерном общем массиве на обратный.

Reverse(Array, Int32, Int32)

Изменяет порядок подмножества элементов в одномерном массиве Array на обратный.

Параметры

Одномерный массив Array, порядок элементов которого нужно изменить на обратный.

Начальный индекс той части массива, порядок элементов которой необходимо изменить на обратный.

Число элементов в части массива, порядок которых нужно изменить на обратный.

Исключения

array имеет значение null .

Массив array является многомерным.

index меньше нижней границы массива array .

Значение параметра length меньше нуля.

index и length не указывают допустимый диапазон в array .

Примеры

В следующем примере кода показано, как отменить сортировку значений в диапазоне элементов в .Array

Комментарии

После вызова этого метода элемент по myArray[i] адресу , где i находится любой индекс в массиве, перемещается в папку myArray[j] , где j равно (myArray.Length + myArray.GetLowerBound(0)) — (i — myArray.GetLowerBound(0)) — 1 .

Этот Reverse метод можно использовать для обратного массива.

Этот метод является операцией O( n ), где n находится length .

Применяется к

Reverse(Array)

Изменяет порядок элементов во всем одномерном массиве Array на обратный.

Параметры

Одномерный массив Array, порядок элементов которого нужно изменить на обратный.

Исключения

array имеет значение null .

Массив array является многомерным.

Примеры

В следующем примере кода показано, как отменить сортировку значений в объекте Array.

Комментарии

После вызова этого метода элемент по myArray[i] адресу , где i находится любой индекс в массиве, перемещается в папку myArray[j] , где j равно (myArray.Length + myArray.GetLowerBound(0)) — (i — myArray.GetLowerBound(0)) — 1 .

Этот метод является операцией O( n ), где n находится Length . array

В F# вместо этого можно использовать функцию Array.rev .

Как показано в следующем примере, Reverse метод можно использовать для отмены массива. Он инициализирует массив с одним элементом для каждого месяца текущего года в календаре текущего языка и региональных параметров. Каждый элемент содержит массив с таким количеством элементов, сколько в этом месяце имеет дни. В примере отображается содержимое массива, вызывается Reverse метод, а затем отображается содержимое обратного массива.

Как вывести массив в обратном порядке без использования length

Создаётся массив целых чисел. Нужно вывести массив в обратном порядке.
У меня получается при помощи .length . Есть ли способ сделать это без .length , используя циклы for-each и арифметические действия?

Предположим, что у нас просто есть массив, созданный где-то и как-то (то есть доступа к num и процессу его формирования мы не имеем). А также что нельзя проводить сортировку массива (как оригинала, так и копии) и использовать другие структуры данных (списки, стеки и т.д.). И, конечно, нельзя использовать .length у массива.

Первый вариант. Вычисление длины массива вручную:

Вместо for-each можно воспользоваться обычным циклом в связке с ArrayIndexOutOfBoundsException .

Второй вариант. Использование рекурсии для вывода на экран (по предложению @etki) с ограничением рекурсии с помощью ArrayIndexOutOfBoundsException :

Метод reverse

Метод reverse изменяет порядок элементов в массиве на обратный.

Метод изменяет исходный массив (он станет перевернутым) и возвращает также перевернутый массив (можно пользоваться и так, и так).

Синтаксис

Пример

Давайте перевернем массив:

Результат выполнения кода:

Пример

А теперь давайте запишем перевернутый массив в новую переменную:

Результат выполнения кода:

Пример . Применение

Давайте перевернем символы строки в обратном порядке. Для этого разобьем строку в массив с помощью split по разделителю » (этот разделитель положит каждый символ строки в отдельный элемент массива), перевернем этот массив с помощью reverse и затем сольем перевернутый массив обратно с помощью join :

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *