Сортировка массива Java

Сортировка массива JavaЕсли нужно упорядочить массив чисел, можно применить метод sort() из класса Arrays.

Этот метод использует усовершенствованную версию алгоритма быстрой сортировки, которая считается наиболее эффективной для большинства наборов данных.

Класс Arrays содержит несколько удобных методов, предназначенных для работы с массивами. Эти методы приведены в конце данного раздела. Программа, код которой будет представлен в конце статьи, создает массив и генерирует случайную комбинацию чисел для лотереи. Например, если нужно выиграть «5 из 35», программа может вывести следующее сообщение:Попробуйте такие числа, и станете богатым.

Чтобы выбрать случайные числа, массив numbers сначала заполняется числами 1, 2,…, n:

Второй массив предназначен для хранения сгенерированных чисел:

Теперь сгенерируем k чисел. Метод Math.random() возвращает случайное число с плавающей точкой, лежащее в интервале от 0(включительно) до 1(это значение не принадлежит интервалу). Умножая результат на число n, получим случайное число, лежащее между 0 и n-1.

Присвоим i-е число i-му элементу массива. Сначала там будет помещено само число n, однако, как будет показано ниже, содержимое массива number будет изменяться после генерации каждого нового числа:

Теперь вы должны убедиться, что ни одно число не повторится — все номера должны быть разными. Следовательно, нужно поместить в элемент number[r] последнее число, содержащееся в массиве, и уменьшить n на единицу.

Обратите внимание на то, что при каждой генерации мы получаем индекс, а не само число. Этот индекс относится к массиву, содержащему числа, которые еще не были выбраны.

После генерации k номеров полученный массив сортируется, чтобы результат выглядел более элегантно:

import java.util.Arrays;
import java.util.Scanner;