Задачу решил при помощи подсказок IDEA. Но лично сам не могу разобрать данный код. Разложите по полочкам пожалуйста.
public static void reverse() {
int n = numbers.size() - 1;
for (int i = 0; i < numbers.size() / 2; i++) {
int temp = numbers.get(i);
numbers.set(i, numbers.get(n - i));
numbers.set(n - i, temp);
Константин Шаталин
25 уровень
Здравствуйте Товарищи!!! Ответьте на вопрос, пожалуйста.
Решен
Комментарии (5)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
Anonymous #3346123
12 апреля, 20:36
0
Gennady Shevchenko
11 января 2023, 21:16
идея уже умеет подсказывать решения задач?
0
НикитаExpert
8 августа 2021, 18:02решение
так как мы не может просто поочередно поменять все значения в массиве, потому что после половины массива значение вернуться назад. к примеру
array[0] = array[9]
array[1] = array[8]
....
array[9] = array[0] здесь уже не будет работать, потому значение 0го элемента уже равно значению 9, то что мы делали первой строчкой. поэтому нам надо менять сразу два элемента первый и последний, второй и предпоследний и т.д.
+13
Константин Шаталин QA
10 августа 2021, 13:58
Спасибо большое, но 4 и 5 строчку все равно немного не понимаю))
+1
hidden #598481
10 августа 2021, 14:11полезный
метод set устанавливает элементу на указанной позиции указанное значение
+5