arraySort

arraySort

> Toiminnot

Lajittelee taulukon-luettelon takaisinkutsutoiminnon määrittämän järjestyksen mukaan.

Elementtejä verrataan kahdella, takaisinsoittofunktion on palautettava negatiivinen, 0 tai positiivinen arvo riippuen siitä, onko ensimmäinen arvo ennen, samalla tasolla vai jälkeen toista arvoa.

Esimerkki:

Asetukset
Palaute
TypeScript

JavaScriptissä sort() ilman vertailijaa lajittelee alkiot merkkijonoina: [10, 9, 1] antaa [1, 10, 9], eikä arraySort-funktion numeerista järjestystä. Anna luvuille aina vertailija: [...a].sort((x, y) => x - y), ja (x, y) => y - x laskevaan järjestykseen. sort lajittelee paikallaan, mistä kopio [...a], jotta saadaan uusi taulukko kuten arraySort; a.toSorted((x, y) => x - y) tekee molemmat kerralla.

Python

Pythonissa sorted(a) palauttaa uuden lajitellun listan, kuten arraySort. Mutta kaksiargumenttista vertailijaa ei ole: lajitellaan avaimen mukaan, sorted(a, key=len) tai sorted(a, key=lambda e: e.life), ja reverse=True kääntää järjestyksen. Käyttääksesi uudelleen vertailijaa, joka palauttaa negatiivisen, nollan tai positiivisen luvun, kääri se: sorted(a, key=functools.cmp_to_key(comparateur)). Lajittelu vertaa alkioita keskenään: lista, jossa on sekaisin lukuja ja merkkijonoja, nostaa TypeError-poikkeuksen.

Huomautuksia