Artikel ini menjelaskan metode implementasi penyortiran cepat Java. Bagikan untuk referensi Anda, sebagai berikut:
Paket com.ethan.sort.java; import java.util.arrays; impor java.util.iterator; import java.util.linkedlist; import java.util.list; complangsort kelas publik {public static <e memperluas sebanding <? Super E >> Daftar <E> QuickSort (Daftar <E> arr) {if (arr.size () <= 1) {return arr; } E pivot = arr.get (0); // Setiap kali diinisialisasi, setiap daftar adalah daftar yang berbeda <e> kurang = LinkedList baru <E> (); // pivot, set ini hanya memiliki satu elemen, dan diinisialisasi setiap kali, daftar yang berbeda <e> pivotlist = new LinkedList <E> (); Daftar <E> lebih = LinkedList baru <E> (); untuk (e i: arr) {if (i.compareto (pivot) <0) {less.add (i); } else if (i.compareto (pivot)> 0) {more.add (i); } else {pivotlist.add (i); //System.out.println("p---"+i); }} // rekursif lebih sedikit = quicksort (kurang); // yang lebih kecil dari pivot // quicksort dilakukan lagi, dan untuk lebih, dibagi menjadi dua bagian lebih = quicksort (lebih); // split lebih sedikit pivot lebih sedikit.addall (pivotlist); // PV --------> [23], pada akhirnya hanya ada satu elemen System.out.println ("PV --------->"+Pivotlist); Less.addall (lebih); lebih sedikit kembali; } / ** * @param args * / public static void main (string [] args) {// TODO Metode yang dihasilkan otomatis Stub integer [] arr = {23,2,8,43,22,32,4,5,34}; Daftar L = Quicksort (arrays.aslist (ARR)); Iterator i = l.iterator (); while (i.hasnext ()) {System.out.println (i.next ()); }}}Saya harap artikel ini akan membantu pemrograman Java semua orang.