Μέθοδος ταξινόμησης Java ()

Πίνακας περιεχομένων

Στην Java, το πλαίσιο συλλογών παρέχει ένα είδος στατικής μεθόδου () που μπορεί να χρησιμοποιηθεί για την ταξινόμηση στοιχείων σε μια συλλογή.

Η sort()μέθοδος του πλαισίου συλλογών χρησιμοποιεί τον αλγόριθμο συγχώνευσης ταξινόμησης για την ταξινόμηση στοιχείων μιας συλλογής.

Ο αλγόριθμος ταξινόμησης συγχώνευσης βασίζεται στον κανόνα διαίρεσης και κατακράτησης. Για να μάθετε περισσότερα σχετικά με το είδος συγχώνευσης, επισκεφτείτε τον Αλγόριθμο συγχώνευσης ταξινόμησης.

Ας πάρουμε ένα παράδειγμα της sort()μεθόδου.

Παράδειγμα: Ταξινόμηση με αύξουσα σειρά

 import java.util.ArrayList; import java.util.Collections; class Main ( public static void main(String() args) ( // Creating an array list ArrayList numbers = new ArrayList(); // Add elements numbers.add(4); numbers.add(2); numbers.add(3); System.out.println("Unsorted ArrayList: " + numbers); // Using the sort() method Collections.sort(numbers); System.out.println("Sorted ArrayList: " + numbers); ) ) 

Παραγωγή

 Μη ταξινομημένη ArrayList: (4, 2, 3) S ταξινόμηση ArrayList: (2, 3, 4) 

Όπως μπορείτε να δείτε, από προεπιλογή, η ταξινόμηση γίνεται με φυσική σειρά (αύξουσα σειρά). Ωστόσο, μπορούμε να προσαρμόσουμε τη σειρά ταξινόμησης της sort()μεθόδου.

Προσαρμοσμένη σειρά ταξινόμησης

Στην Java, η sort()μέθοδος μπορεί να προσαρμοστεί ώστε να εκτελεί ταξινόμηση με αντίστροφη σειρά χρησιμοποιώντας τη Comparatorδιεπαφή.

Παράδειγμα: Ταξινόμηση σε φθίνουσα σειρά

 import java.util.ArrayList; import java.util.Collections; import java.util.Comparator; class Main ( public static void main(String() args) ( // Creating an array list ArrayList numbers = new ArrayList(); // Add elements numbers.add(4); numbers.add(2); numbers.add(3); System.out.println("Unsorted ArrayList: " + numbers); // Using the sort() method Collections.sort(numbers); System.out.println("Natural Sorting: " + numbers); // Using the customized sort() method Collections.sort(numbers, new CustomComparator()); System.out.println("Customized Sorting: " + numbers); ) ) class CustomComparator implements Comparator ( @Override public int compare(Integer animal1, Integer animal2) ( int value = animal1.compareTo(animal2); // elements are sorted in reverse order if (value> 0) ( return -1; ) else if (value < 0) ( return 1; ) else ( return 0; ) ) ) 

Παραγωγή

 Λίστα χωρίς ταξινόμηση Λίστα: (4, 2, 3) Φυσική ταξινόμηση: (2, 3, 4) Προσαρμοσμένη ταξινόμηση: (4, 3, 2) 

Στο παραπάνω παράδειγμα, χρησιμοποιήσαμε τη sort()μέθοδο με το CustomComparator ως επιχείρημα.

Εδώ, το CustomComparator είναι μια κλάση που εφαρμόζει τη Comparatorδιεπαφή. Μάθετε περισσότερα για το Java Comparator Interface.

Στη συνέχεια παρακάμπτουμε τη compare()μέθοδο. Η μέθοδος θα ταξινομήσει τώρα στοιχεία με αντίστροφη σειρά.

ενδιαφέροντα άρθρα...