Как отсортировать этот массив по разделу из 5 чисел? - PullRequest
0 голосов
/ 03 сентября 2018

Пожалуйста, ребята, кто-нибудь поможет мне разобрать этот массив?

Я хочу отсортировать пять первых чисел. лайк: n[0], n[1], n[2],n[3],n[4] - отсортировать эти значения, затем ... сортируйте больше 5, и больше 5, и больше 5, пока не закончите. Я не хочу сокращать весь этот массив. Я хочу коротать с 5 до 5. если мой массив заполнить первые 5 чисел, как: 30 12 13 42 55, я хочу снимать эти значения, и следующие 5 чисел должны быть отсортированы снова. Есть какой-нибудь способ сделать это?

public class randomNumbers{

    int n[] = { 0,0,0,0,0,     // 0 to 4
            0,0,0,0,0,     // 5 to 9
            0,0,0,0,0,     // 10 to 14
            0,0,0,0,0,     // 15 to 19
            0,0,0,0,0,     // 20 to 24
            0,0,0,0,0,     // 25 to 29
            0,0,0,0,0,     // 30 to 34
            0,0,0,0,0,     // 35 to 39
            0,0,0,0,0,     // 40 to 44
            0,0,0,0,0 };   // 45 to 49



    int s[] = {   0,0,       // 0 to 1
            0,0,       // 2 to 3
            0,0,       // 4 to 5
            0,0,       // 6 to 7
            0,0,       // 8 to 9
            0,0,       // 10 to 11
            0,0,       // 12 to 13
            0,0,       // 14 to 15
            0,0,       // 16 to 17
            0,0, };    // 18 to 19
    HashSet<Integer> used = new HashSet<Integer>();

    public randomNumbers(){

        Random rand = new Random();

        int i;
        int g;

        for (g = 0; g != n.length; g++) {

            int add = 1+ (int)(Math.random() * 50);

            while (used.contains(add)) { number
                add = 1+ rand.nextInt(50); 

            }
            used.add(add);
             n[g] = add;
            //by this time, add will be unique

        }

    }
}

1 Ответ

0 голосов
/ 03 сентября 2018

Документация гласит:

java.util

Массивы классов

public static void sort(Object[] a, int fromIndex, int toIndex)

Сортирует указанный диапазон указанного массива объектов в порядке возрастания в соответствии с естественным порядком его элементов.

Затем цикл как в

for (int i=0; i<n.length; i+=5) {
    int end = Math.min(i+5,n.length);
    Arrays.sort(n,i,end);
}

сделает свое дело.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...