Aleatorizador de listas
Baraja una lista, elige N al azar, o saca un único ganador - sorteo criptográficamente justo.
Pega una lista, elige un modo: mezclar, elegir N, repartir en equipos equilibrados, o sacar un ganador. Pondera las entradas con nombre:peso para rifas. Cada elección es criptográficamente aleatoria y sin sesgo.
Cómo usarla
Pega tu lista
Una entrada por línea. Las líneas vacías se ignoran; activa recortar y quitar duplicados para limpiar la entrada.
Elige un modo
Mezclar todo, elegir N, hacer equipos, o sacar ganador.
Ejecuta el sorteo
Pulsa Ejecutar. La salida es el nuevo orden, la selección o los equipos - cópiala o pulsa un sorteo reciente para recuperarlo.
¿Qué es?
Un aleatorizador de listas toma una secuencia de cadenas y produce una permutación, una muestra o una elección única. Lo interesante no es el algoritmo (Fisher-Yates, muestreo k-de-n) - es la fuente de aleatoriedad. Math.random vale para una rifa amistosa; para algo defendible, el CSPRNG detrás de window.crypto.getRandomValues es la herramienta correcta.
Cuándo usarla
Elegir ganador de un sorteo. Mezclar una lista de clase para el orden de presentación. Muestrear 10 líneas de un log de 1000 para una pasada de QA. Aleatorizar una playlist cuando la app tiene «shuffle» pero no revela el orden. Dividir un equipo en parejas.
Errores comunes
Usar Math.random para un sorteo con consecuencias - no es lo bastante imparcial y en versiones antiguas de Safari tenía debilidades conocidas. Olvidar que tirar de una lista con duplicados pidiendo «único» devuelve el conjunto único primero; aclara si «único» va por contenido o por posición. Y barajar y luego ordenar la salida para mostrarla, que es lo contrario del objetivo.
Preguntas frecuentes
- ¿Qué tan «aleatorio» es esto?
- Criptográficamente seguro. Usamos crypto.getRandomValues, el CSPRNG del navegador - la misma fuente que respalda la generación de claves TLS, con muestreo por rechazo para evitar el sesgo de módulo. Para sorteos, rifas y cualquier cosa auditable, sobra.
- Elegir N: ¿con o sin reemplazo?
- Sin reemplazo por defecto - cada entrada puede salir como mucho una vez. Activa «permitir duplicados» para muestrear con reemplazo (útil para stress-test o simular dados).
- ¿Puede dividir una lista en equipos?
- Sí. Elige «Hacer equipos», indica cuántos equipos, y la lista se mezcla y se reparte por turnos en grupos equilibrados cuyos tamaños difieren como mucho en uno.
- ¿Puedo dar más probabilidad a algunas entradas?
- Activa «Ponderado» y añade :peso a una línea, p. ej. «Alice:5». Las entradas más pesadas tienen proporcionalmente más probabilidad de salir. Las líneas sin peso valen 1 por defecto.
Valora esta herramienta
Comparte tu experiencia para ayudar a los demás.