fixmint
NL

Waarom 10 vóór 2 komt, en hoe natuurlijk sorteren dat oplost

Door · · bijgewerkt 8 november 2026 · 4 min leestijd

Bij een gewone alfabetische sortering wordt eerst het eerste teken van elk item vergeleken, dan het tweede, enzovoort. Het eerste teken van "10" is 1, en 1 komt vóór 2, dus "10" wordt vóór "2" gesorteerd. Die volgorde klopt voor tekst, maar niet voor getallen. Natuurlijk sorteren leest elk reeks cijfers als één geheel getal, zodat 2 vóór 10 komt. Door getallen aan te vullen met nullen, zoals 02 en 10, los je hetzelfde probleem op in de bestandsnamen zelf.

Regels sorterenLijst staat niet in volgordeGratis doen

Waarom de computer het zo doet

Een gewone sortering vergelijkt tekst per positie, van links naar rechts, op basis van tekencodes of de sorteervolgorde van de taal. Zodra er een verschil is, stopt de vergelijking. Voor woorden werkt dat prima: "apple" komt vóór "banana" omdat de eerste letters verschillen.

Bij getallen gaat het mis. Neem drie bestandsnamen: file-2, file-9 en file-10. Bij het laatste paar bereikt de vergelijking positie 6, waar de tekens 1 en 9 zijn. De 1 is kleiner, dus file-10 komt eerst. De gewone volgorde is file-10, file-2, file-9. Dat klopt voor letters, maar niet voor wie telt.

Natuurlijk sorteren

Natuurlijk sorteren, ook wel numeriek of menselijk sorteren genoemd, splitst elke tekst in reeksen cijfers en reeksen andere tekens. Cijferreeksen worden vergeleken op hun waarde, al het andere als tekst. Zo komt 2 vóór 10 en file-2 vóór file-10. Veel bestandsbeheerders gebruiken standaard zo'n sortering, en daarom ziet een map met genummerde foto's er daar meestal goed uit.

Een lijst sorteren in fixmint

  1. Plak de lijst in de sorteertool, één item per regel.
  2. Kies onder Volgorde voor Getallen in plaats van A→Z.
Gewoon A→ZGetallen
item1, item10, item2item1, item2, item10

De volgorde Getallen leest de cijfers als hele getallen. Dubbele regels verwijderen biedt dezelfde volgorde Getallen. Het verwijdert eerst de herhalingen en sorteert daarna, zodat de uitvoer uniek is en in numerieke volgorde staat.

Voorloopnullen: de andere oplossing

Als je bestanden zelf benoemt, geef dan elk getal dezelfde breedte: 01, 02 en zo door tot 10, of 001 tot 100. Een gewone sortering geeft dan overal de juiste volgorde, ook in programma's zonder natuurlijk sorteren. Voorloopnullen houden de volgorde ook bewaard wanneer een lijst je computer verlaat, omdat de bestandsnamen de volgorde zelf dragen. Het werkt omdat gelijke breedtes ervoor zorgen dat een vergelijking teken voor teken dezelfde volgorde geeft als de numerieke. De breedte moet passen bij het grootste getal. Een schema met drie cijfers gaat tot 999, dus een bestand met de naam 1000 zou tussen 100 en 101 komen en de volgorde breken. Groeit een lijst voorbij de breedte, vul dan elk getal aan tot de bredere breedte.

Gebruik dit voor nieuwe bestanden, en hernoem bestaande bestanden in één keer door de nullen toe te voegen.

Waar een gewone sortering opduikt

Genummerde namen komen overal voor: foto's die als IMG_1 tot IMG_120 zijn geëxporteerd, hoofdstukken als Hoofdstuk 1 tot Hoofdstuk 30, tracklijsten, factuurnummers en softwareversies. Elk daarvan kan er na een gewone sortering verkeerd uitzien, omdat het eerste cijfer de positie bepaalt. Hoofdstuk 10 komt dan naast Hoofdstuk 1 te staan, en Hoofdstuk 2 bijna achteraan.

Labels met letters werken op dezelfde manier. Deel 2a, Deel 2b en Deel 10 worden bij natuurlijk sorteren in die volgorde gezet, omdat de cijfers eerst als getallen worden vergeleken en de letters alleen gelijke getallen onderling onderscheiden. Een gewone sortering zet Deel 10 vóór Deel 2a.

Bij datums moet je oppassen. Bij natuurlijk sorteren wordt bij datums met de dag vooraan, zoals 4/11/2026 en 12/01/2026, eerst de dag vergeleken. Daardoor komt 4/11 vóór 12/01, ook al is 12 januari eerder in het jaar. Datums die met het jaar beginnen, zoals 2026-11-04, sorteren correct als gewone tekst. Gebruik dat formaat als een lijst op datum moet worden gesorteerd.

Controleer het resultaat na het sorteren

Controleer de overgangen, want daar gaat een gewone sortering het vaakst mis: de overgang van 9 naar 10, en van 99 naar 100. Bij een sortering op Getallen staan die punten in de juiste volgorde. Als een lijst aangevulde en niet-aangevulde getallen door elkaar heeft, kijk dan eerst naar die punten, want daar zie je de mix het duidelijkst.

Kies de volgorde bewust

Gebruik A tot Z voor woorden, namen en titels, waar de letters de betekenis dragen. Gebruik Getallen voor lijsten waarvan de items beginnen met een aantal, een pagina, een hoofdstuk of een versie. Gebruik lengte als de kortste items eerst moeten komen. Willekeurig is om een willekeurige volgorde te kiezen, en het geeft elke keer dat je erop drukt een ander resultaat. Voor de regels achter een gewone alfabetische volgorde, zie hoe je een lijst alfabetiseert.

Randgevallen

  • Gemengde regels. Natuurlijk sorteren vergelijkt hele regels van links naar rechts. In een lijst die met een naam begint, bepaalt de naam eerst de volgorde, dus "Bob 1" komt na "Ada 10", ook al is 1 kleiner dan 10.
  • Gemengde breedtes. Aangevulde en niet-aangevulde getallen in één lijst kunnen bij natuurlijk sorteren als gelijk worden gezien, waardoor hun volgorde afhangt van de invoer. Kies voor elke lijst één breedte.
  • Decimalen. Natuurlijk sorteren leest 1.9 als 1, dan 9, en 1.10 als 1, dan 10, dus 1.9 komt eerst. Dat past bij versienummers, waarbij 1.10 de latere uitgave is. Bij decimale waarden zoals prijzen is 1.10 kleiner dan 1.9, dus dan klopt de natuurlijke volgorde niet. Vul de decimalen aan tot hetzelfde aantal cijfers: 1.10 en 1.90.
  • Hoofdlettergebruik. De sortering behandelt Apple en apple standaard als gelijk, dus ze worden samen gesorteerd in de volgorde waarin ze zijn geplakt. Hoofdlettergevoelig sorteren verandert dat.

Vertaald uit de Engels origineel met hulp van AI.

Reacties

    Nog geen reacties. Wees de eerste.

    Je waardering (optioneel)

    Je e-mail wordt nooit getoond of bewaard.

    Omslag van How to Remain Valuable When Intelligence Becomes CheapHow to Remain Valuable When Intelligence Becomes Cheap

    224 pagina's over de menselijke, economische en strategische voordelen die schaars blijven wanneer AI het grootste deel van het cognitieve werk kan doen.

    $3.84Koop op GumroadIn het Engels