Este artículo describe el método de implementación de la clasificación rápida de Java. Compártelo para su referencia, como sigue:
paquete com.ethan.sort.java; import java.util.arrays; import java.util.iterator; import java.util.linkedlist; import java.util.list; clase pública Quicksort {public static <e extiende comparable <? Super E >> List <E> QuickSort (List <E> arr) {if (arr.size () <= 1) {return arr; } E pivot = arr.get (0); // Cada vez que se inicializa, cada lista es una lista diferente <E> Less = new LinkedList <E> (); // Pivot, este conjunto tiene solo un elemento, y se inicializa cada vez, diferente lista <e> pivotList = new LinkedList <E> (); List <E> más = new LinkedList <E> (); for (e i: arr) {if (i.compareto (pivot) <0) {menos.add (i); } else if (i.compareto (pivot)> 0) {más.add (i); } else {pivotList.add (i); //System.out.println("p--k>"+i); }} // recursivo menos = Quicksort (menos); // el más pequeño que el pivote // el QuickSort se realiza nuevamente, y para más se divide en dos partes más = Quicksort (más); // divide menos pivote menos. Addall (PivotList); // PV --------> [23], al final solo hay un elemento System.out.println ("PV --------->"+PivotList); menos.addall (más); regresar menos; } / ** * @param args * / public static void main (string [] args) {// tODO Método auto-generado Integer [] arr = {23,2,8,43,22,32,4,5,34}; Lista l = Quicksort (Arrays.aslist (arr)); Iterador i = L.Iterator (); while (i.hasnext ()) {system.out.println (I.Next ()); }}}Espero que este artículo sea útil para la programación Java de todos.