Sortare linii
Puneți în ordine orice listă: alfabetic, crescător sau descrescător, în ordine naturală, după primul număr de pe fiecare linie, după lungime sau amestecată aleatoriu. Sortarea folosește regulile de limbă ale browserului și rulează în întregime pe dispozitivul dumneavoastră.
0 caractere · 0 cuvinte · 0 rânduri
0 caractere · 0 cuvinte · 0 rânduri
Funcționează integral în această filă a browserului. Textul dvs. nu este încărcat și nici stocat.
Ce face
Sortare rânduri ordonează rândurile alfabetic, cu colaționarea browserului dvs. în funcție de limbă, în ordine naturală (file2 înainte de file10), după primul număr din fiecare rând, după lungime sau într-o ordine aleatorie.
articol 10 articol 9 Articol 1
Articol 1 articol 9 articol 10
Ordinea alfabetică nu este totuna cu ordinea codurilor de caractere
Cea mai simplă metodă prin care un calculator sortează textul este după codul caracterelor, iar rezultatele sunt ciudate: toate literele mari (codurile 65–90 în ASCII) vin înaintea tuturor literelor mici (97–122), așa că „Zebra” apare înaintea lui „apple”, iar literele cu diacritice ajung după z. Oamenii se așteaptă la ordinea din dicționar, numită de lingviști colaționare. Instrumentul folosește Intl.Collator, implementarea din browser a Algoritmului de colaționare Unicode, astfel că „apple”, „Banana” și „éclair” sunt sortate așa cum se așteaptă un cititor.
Colaționarea depinde și de limbă. Dicționarele germane așază ä lângă a, în timp ce suedeza pune å, ä și ö după z, la sfârșitul alfabetului. Instrumentul folosește limba implicită a browserului, deci o listă sortată pe un sistem suedez urmează regulile suedeze. Cu opțiunea de ignorare a majusculelor activată, literele care diferă doar prin majusculă sau accent sunt considerate egale și se ordonează după următoarea diferență.
Ordine naturală, numerică și după lungime
Ordinea alfabetică compară cifrele pe rând, așa că „file10” apare înaintea lui „file2”, deoarece 1 este mai mic decât 2. Ordinea naturală citește șirurile de cifre ca numere întregi și dă file1, file2, file10, așa cum afișează numele managerii de fișiere precum Windows Explorer și Finder din macOS. Folosiți-o pentru titluri de capitole, liste de versiuni, numere de facturi și nume de poze precum IMG_9 și IMG_10.
Ordinea numerică caută primul număr din fiecare linie, inclusiv semnul minus și zecimalele, și sortează după valoarea lui; este potrivită pentru liste de prețuri, scoruri și linii precum „12 mere”. Liniile fără număr merg la sfârșit. Ordinea după Durată sortează după numărul de caractere vizibile, de la cel mai scurt, iar egalitățile se departajează alfabetic; este utilă pentru a găsi cele mai scurte nume de domenii sau intrările trunchiate.
Cum funcționează amestecarea aleatorie
Amestecarea folosește algoritmul Fisher–Yates (publicat de Ronald Fisher și Frank Yates în 1938 și adaptat pentru calculatoare de Richard Durstenfeld în 1964), care parcurge lista de la sfârșit și schimbă fiecare linie cu o linie aleasă aleatoriu, aflată la aceeași poziție sau înaintea ei. Cu o sursă aleatorie bună, fiecare ordine are aceeași probabilitate. Numerele aleatorii vin de la mulberry32, un mic generator pseudoaleatoriu cu sămânță, deci amestecarea rămâne aceeași până cereți una nouă. Cum starea lui are 32 de biți, poate produce cel mult aproximativ 4,3 miliarde de amestecări diferite, mai puțin decât cele 6,2 miliarde de ordini posibile pentru doar 13 linii. Este suficient pentru întrebări de quiz, liste de redare și alegerea ordinii unei prezentări, dar nu pentru loterii sau orice implică bani ori securitate.
Pentru a curăța o listă înainte de sortare, treceți-o mai întâi prin Eliminare linii duplicate.
Întrebări frecvente
- De ce apare file10 înainte de file2?
- Ordinea alfabetică simplă compară caracter cu caracter, iar 1 vine înaintea lui 2. Alegeți ordinea naturală, care tratează fiecare șir de cifre ca pe un număr, pentru a obține file2 înaintea lui file10.
- Sortarea pune pe primul loc cuvintele cu majuscule?
- Nu. Sortarea folosește colaționarea adaptată limbii, deci apple și Apple apar una lângă alta. Doar sortarea simplă după codul caracterelor pune toate literele mari înaintea celor mici.
- Amestecarea este cu adevărat aleatorie?
- Folosește o amestecare Fisher–Yates nepărtinitoare, condusă de un generator pseudoaleatoriu rapid cu sămânță. Este suficient de corectă pentru uz obișnuit, dar nepotrivită pentru extrageri, loterii sau securitate.
- Unde ajung liniile fără număr în ordinea numerică?
- La sfârșitul listei, în ordine alfabetică între ele. Liniile care conțin un număr sunt ordonate după valoarea primului număr găsit pe linie.
- Pot sorta liniile în ordine alfabetică inversă?
- Da, alegeți Z→A. Folosește aceeași comparație adaptată limbii ca A→Z, doar inversată, așa că cuvintele cu diacritice și cele cu majuscule rămân în poziții firești.