Sobes.tech
Junior — Middle

Ar galite paaiškinti, kaip veikia Python funkcija sorted ir kaip ji rūšiuoja duomenis?

sobes.tech AI

Atsakymas iš AI

„Python“ funkcija sorted priima iteruojamą objektą (pavyzdžiui, sąrašą, tupalą, eilutę) ir grąžina naują surūšiuotą sąrašą, nekeičiant originalių duomenų.

Pagal numatytuosius nustatymus, rūšiavimas vyksta didėjimo tvarka, naudojant elementų natūralųjį tvarką (pavyzdžiui, skaitmeninį arba leksikografinį eilutėms).

Rūšiavimo elgesį galima keisti naudojant parametrus:

  • key — funkcija, kuri taikoma kiekvienam elementui, kad gauti reikšmę, pagal kurią bus rūšiuojama.
  • reverse — loginis parametras, jei True, rūšiavimas vyksta mažėjimo tvarka.

Pavyzdys:

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

words = ['apple', 'banana', 'cherry']
sorted_words = sorted(words, key=len)  # rūšiavimas pagal žodžio ilgį

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

Python naudoja Timsort algoritmą, kuris yra efektyvus realių duomenų atžvilgiu ir stabilus (saugo tų pačių elementų tvarką).