1. Концепция алгоритма.
Быстрая сортировка — это усовершенствованная версия пузырьковой сортировки. Предложен CAR Hoare в 1962 году.
2. Алгоритмическое мышление.
Разделите данные, которые нужно отсортировать, на две независимые части с помощью однопроходной сортировки. Все данные в одной части меньше, чем все данные в другой части. Затем используйте этот метод, чтобы быстро отсортировать две части данных соответственно. Процесс сортировки может происходить рекурсивно, так что все данные становятся упорядоченной последовательностью.
3. Реализуйте идеи.
① Используйте первое ключевое слово K 1 в качестве управляющего слова, разделите [K 1 ,K 2 ,…,K n ] на две подобласти так, чтобы все ключевые слова в левой области были меньше или равны K 1 и все ключевые слова в правой области больше или равны К 1, и, наконец, управляющее слово располагается в соответствующей позиции между двумя подобластями. Данные в подобласти все еще находятся в неупорядоченном состоянии.
② Обработайте левую область целиком и обработайте ее, выполнив шаги ①, и выполните ту же обработку с правой областью. (то есть рекурсия)
③ Повторяйте шаги ① и ②, пока не будет обработана левая область.
public static void QuickSortByMid(int[] a, int low, int high) { if (low >= high) return; // Разделение int Pivot = a[low] // Базовое значение int i = low, j = high; while (i < j) { while (i < j && a[j] >= стержень) --j; a[i]=a[j]; while (i < j && a[i] <= стержень) + + я; a[j]=a[i]; } a[i]=pivot; QuickSortByMid(a, low, i-1);Принципиальная схема алгоритма быстрой сортировки:
Выше приведено все содержание этой статьи. Я надеюсь, что изучение алгоритма быстрой сортировки Java будет полезно каждому.