CodeKitHub
Generatortools

Gratis Lijst Randomizer

Laatst bijgewerkt:

Plak een lijst — namen, taken, tombola-inzendingen, wat dan ook — één item per regel, en schud die in een eerlijke willekeurige volgorde met een echte Fisher-Yates-shuffle. Zet winnaars-modus aan om slechts N willekeurige items te trekken, handig om een winnaar van een giveaway te kiezen of een willekeurige volgorde toe te wijzen zonder de hele geschudde lijst te tonen.

Wat is deze tool?

Een lijst-randomizer herschikt een set items in een willekeurige volgorde, of trekt er een willekeurige subset uit. Het lastige is dit doen zonder vertekening: een naïeve aanpak zoals een array sorteren met een willekeurige vergelijkingsfunctie levert een scheve verdeling op waarbij sommige volgordes veel waarschijnlijker zijn dan andere.

Deze tool gebruikt het Fisher–Yates (Durstenfeld) shuffle-algoritme, de standaardmethode voor een aantoonbaar uniforme willekeurige permutatie — elke mogelijke volgorde van je lijst is even waarschijnlijk.

Waarom gebruiken?

  • Echt onbevooroordeeld schudden — Fisher–Yates, niet het gangbare sort(() => Math.random() - 0.5) anti-patroon dat resultaten scheeftrekt.
  • Winnaars-modus: trek precies N willekeurige items in plaats van de hele lijst te schudden, ideaal voor tombola's en giveaways.
  • Optioneel duplicaten verwijderen vóór het schudden, voor lijsten die per ongeluk herhalingen kunnen bevatten.
  • Werkt met elke tekst — namen, taken, tickets, prijzen — één item per regel.
  • Privé: het schudden gebeurt volledig in je browser, er wordt niets geüpload.

Hoe te gebruiken

  1. Plak je lijst in het vak, één item per regel.
  2. Vink optioneel "verwijder duplicaten voor het schudden" aan als de lijst mogelijk herhalingen bevat.
  3. Voor een volledige herschikking klik je gewoon op Shuffle. Voor het kiezen van winnaars vink je de N-items-optie aan en stel je in hoeveel je wilt trekken.
  4. Kopieer het resultaat — klik op elk moment opnieuw op Shuffle voor een nieuwe willekeurige volgorde of een nieuwe trekking.

Voorbeeld

Invoer

Alice
Bob
Charlie
Diana
Ethan

Uitvoer

Een willekeurig herschikte lijst zoals Charlie, Ethan, Alice, Diana, Bob — elke keer anders wanneer je op Shuffle klikt.

Met winnaars-modus ingesteld op 2 zou dezelfde invoer bijvoorbeeld alleen Ethan en Alice kunnen opleveren — een willekeurige trekking van 2 items, geen deel van één geschudde volgorde.

Waarom een naïeve shuffle vertekende resultaten oplevert

sort(() => Math.random() - 0.5) is een gangbare truc die correct oogt maar het niet is: hij vertrouwt erop dat het sorteeralgoritme de vergelijkingsfunctie een specifiek aantal keer op een specifiek patroon aanroept, en echte sorteerimplementaties garanderen dat niet. Het praktische effect is een shuffle waarbij bepaalde volgordes vaker voorkomen dan andere — subtiel genoeg om bij een vluchtige blik niet op te vallen, maar statistisch meetbaar over veel runs.

Fisher–Yates omzeilt het hele probleem: in plaats van een sorteeralgoritme indirect om willekeur te vragen, wisselt het elke positie direct precies één keer met een willekeurige resterende positie, wat aantoonbaar uniform is, ongeacht de sorteerimplementatie van de onderliggende taal.

Willekeurige Getallengenerator · UUID Generator

Veelgestelde vragen

Waarom niet gewoon array.sort(() => Math.random() - 0.5) gebruiken?

Die éénregelige truc is een bekend anti-patroon: de sort()-methode van JavaScript garandeert niet dat elk paar elementen even vaak wordt vergeleken, dus de resulterende volgorde is meetbaar vertekend richting bepaalde permutaties — sommige items eindigen vaker dichter bij het begin of einde dan echte willekeur zou opleveren. Fisher–Yates vermijdt dit volledig door constructie, en dat is het algoritme dat deze tool daadwerkelijk implementeert.

Is de shuffle-volgorde echt onbevooroordeeld?

Ja. Fisher–Yates doorloopt de lijst één keer, en wisselt bij elke stap het huidige item met een uniform willekeurig item uit het resterende, nog niet geschudde deel. Dit is wiskundig bewezen elke mogelijke volgorde met gelijke kans te produceren, gegeven een goede bron van willekeur (de Math.random() van JavaScript).

Wat is het verschil tussen schudden en winnaars-modus?

Shuffle-modus herschikt elk item in je lijst en toont ze allemaal, gewoon in een nieuwe volgorde. Winnaars-modus trekt slechts N items willekeurig en toont alleen die — handig als je een vast aantal winnaars of steekproeven wilt selecteren zonder een volledig herschikte lijst prijs te geven.

Kan ik dit gebruiken voor een echte prijstrekking of tombola?

Ja, voor informele giveaways en trekkingen werkt dit goed omdat de willekeur echt uniform is. Voor een wettelijk gereguleerde sweepstake met geldprijzen: controleer je lokale regelgeving — sommige rechtsgebieden vereisen een specifiek controleerbaar trekkingsproces.

Verandert het verwijderen van duplicaten mijn originele lijst?

Nee — deduplicatie beïnvloedt alleen de geschudde uitvoer, en alleen als het vakje is aangevinkt. Je invoerlijst blijft precies zoals je hem hebt getypt, dus je kunt de optie aan- en uitzetten en opnieuw schudden zonder iets opnieuw te typen.

Gerelateerde tools