Всем привет, искал существующие команды по сортировке массивов, есть Arrays.sort(array), но он в возрастающем порядке выдаёт.
Далее, получив отсортированный массив, я решил поменять индексы элементов, ну т.е. в первую ячейку занести последнее значение, во вторую - предпоследнее и т.д., но мой метод только наполовину работает, т.к. дойдя до середины, он начинает обратно разворачиваться. И как эту ошибку обойти, не вижу.
Также, я пытался создавать отдельный массив, и в него загонять в обратном порядке значения из отсортированного по убыванию array, а потом обратно... но в этом случае в main попадает почему-то просто возрастающий array... я чувствую, что решение близко, но не нахожу...
Заранее спасибо!
package com.javarush.task.task07.task0728;
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.*;
/*
В убывающем порядке
*/
public class Solution {
public static void main(String[] args) throws Exception {
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
int[] array = new int[20];
for (int i = 0; i < 20; i++) {
array[i] = Integer.parseInt(reader.readLine());
}
sort(array);
for (int x : array) {
System.out.println(x);
}
}
public static void sort(int[] array) {
Arrays.sort(array); //сортирует массив по возрастанию эта команда
for (int i=0; i<20;i++){
array[i]=array[array.length-1-i];}
}
}