Sobes.tech
Junior — Middle

Μπορείτε να εξηγήσετε πώς λειτουργεί η συνάρτηση sorted στην Python και πώς ταξινομεί τα δεδομένα;

sobes.tech AI

Απάντηση από AI

Η συνάρτηση sorted στην Python δέχεται ένα επαναληπτικό αντικείμενο (π.χ. μια λίστα, ένα tuple, μια συμβολοσειρά) και επιστρέφει μια νέα ταξινομημένη λίστα, χωρίς να αλλάζει τα αρχικά δεδομένα.

Κατά προεπιλογή, η ταξινόμηση γίνεται σε αύξουσα σειρά, χρησιμοποιώντας την φυσική σειρά των στοιχείων (π.χ. αριθμητική ή λεξικογραφική για συμβολοσειρές).

Μπορείτε να αλλάξετε τη συμπεριφορά της ταξινόμησης με τις παραμέτρους:

  • key — μια συνάρτηση που εφαρμόζεται σε κάθε στοιχείο για να πάρει την τιμή βάσει της οποίας θα γίνει η ταξινόμηση.
  • reverse — μια boolean παράμετρος, αν είναι True, ταξινομεί σε φθίνουσα σειρά.

Παράδειγμα:

numbers = [5, 2, 9, 1]
sorted_numbers = sorted(numbers)  # [1, 2, 5, 9]

words = ['apple', 'banana', 'cherry']
sorted_words = sorted(words, key=len)  # ταξινόμηση κατά μήκος της λέξης

sorted_desc = sorted(numbers, reverse=True)  # [9, 5, 2, 1]

Η Python χρησιμοποιεί τον αλγόριθμο Timsort, ο οποίος είναι αποδοτικός για πραγματικά δεδομένα και σταθερός (διατηρεί τη σειρά των ίσων στοιχείων).