Maison >Java >javaDidacticiel >Implémenter et améliorer l'algorithme de tri rapide de Java
Mise en œuvre et optimisation de l'algorithme de tri rapide Java
Quick Sort est un algorithme de tri classique qui a un large éventail d'applications dans des applications pratiques. Cet article présentera l'implémentation de l'algorithme de tri rapide en Java et améliorera l'efficacité de l'algorithme grâce à l'optimisation.
Le processus spécifique de mise en œuvre est le suivant :
public class QuickSort { public static void quickSort(int[] arr, int low, int high) { if (low < high) { int pivot = partition(arr, low, high); // 基准元素的位置 quickSort(arr, low, pivot - 1); // 对基准元素左边的子序列进行快速排序 quickSort(arr, pivot + 1, high); // 对基准元素右边的子序列进行快速排序 } } public static int partition(int[] arr, int low, int high) { int pivot = arr[low]; // 选择第一个元素作为基准元素 while (low < high) { while (low < high && arr[high] >= pivot) { high--; } arr[low] = arr[high]; // 将比基准小的元素移到低端 while (low < high && arr[low] <= pivot) { low++; } arr[high] = arr[low]; // 将比基准大的元素移到高端 } arr[low] = pivot; // 基准元素放入相遇的位置 return low; // 返回基准元素的位置 } public static void main(String[] args) { int[] arr = {6, 1, 9, 0, 4, 7, 8, 2, 5, 3}; quickSort(arr, 0, arr.length - 1); System.out.println(Arrays.toString(arr)); } }
Ce qui précède est l'implémentation de base de l'algorithme de tri rapide, et les résultats du tri peuvent être testés via la méthode principale.
Grâce à l'optimisation ci-dessus, la complexité temporelle de l'algorithme de tri rapide peut être réduite dans des circonstances particulières et l'efficacité de l'algorithme de tri rapide peut être améliorée.
Résumé :
Cet article présente l'implémentation et l'optimisation de l'algorithme de tri rapide en Java. L'algorithme de tri rapide divise la séquence en sélectionnant des éléments de référence, puis trie de manière récursive les sous-séquences divisées pour finalement obtenir une séquence ordonnée. L'efficacité de l'algorithme de tri rapide peut être encore améliorée en sélectionnant aléatoirement des éléments de référence ou en utilisant des mesures d'optimisation telles que la méthode à trois nombres.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!