Embaralhador de Listas Aleatórias - Ferramenta Online Gratuita de Aleatorização de Listas
Embaralhador de listas aleatório gratuito usando o algoritmo comprovado de Fisher-Yates. Embaralhe instantaneamente nomes, alunos, equipes ou tarefas. Perfeito para professores, torneios e decisões imparciais. Não requer cadastro.
Embaralhador de Lista Aleatória
Digite os itens para embaralhar, um por linha. Linhas vazias serão removidas automaticamente.
Documentação
O que é um embaralhador de listas aleatório?
Um embaralhador de listas aleatório é uma ferramenta que recebe uma lista de itens e os reorganiza em uma nova ordem aleatória. Digite nomes, tarefas ou qualquer outra coisa, um item por linha, e a ferramenta os reorganizará para que toda ordem possível tenha a mesma chance de ocorrer. Essa ferramenta usa o embaralhamento de Fisher–Yates, um algoritmo conhecido por produzir ordens aleatórias não enviesadas.
Como usar o embaralhador de listas aleatório
- Digite ou cole a lista na caixa, com um item por linha.
- Clique em "Randomizar lista". Os itens serão reorganizados instantaneamente.
- Leia a lista embaralhada abaixo do botão, numerada na nova ordem.
- Clique novamente em "Randomizar lista" para fazer um novo embaralhamento independente.
- Clique em "Copiar resultado" para copiar a nova ordem ou em "Limpar" para começar de novo.
As linhas em branco da entrada são removidas automaticamente, portanto, quebras de linha extras não criarão entradas vazias nos resultados.
Como funciona o algoritmo de embaralhamento de Fisher–Yates?
O embaralhamento de Fisher–Yates percorre a lista uma vez, começando pelo último item e avançando em direção ao início. A cada etapa, ele escolhe aleatoriamente um item da parte da lista que ainda não foi posicionada e o troca com o item da posição atual.
Fórmula do embaralhamento de Fisher–Yates
Para uma lista de n itens, numerados da posição 0 até a posição n − 1:
1for i from n − 1 down to 1:
2 choose a random whole number j, where 0 ≤ j ≤ i
3 swap the items at positions i and j
4O laço é executado n − 1 vezes, portanto o embaralhamento leva cerca de n etapas ao todo. Isso é chamado de tempo linear, escrito como O(n). Como o algoritmo considera cada posição exatamente uma vez e escolhe itens de um conjunto de opções que diminui de forma bem definida, cada uma das n! (fatorial de n: n × (n − 1) × ... × 1) ordenações possíveis tem a mesma chance de ser o resultado.
Exemplo: embaralhando uma lista de quatro itens
Comece com quatro itens nas posições 0 a 3: Maçã, Banana, Cereja, Tâmara.
- i = 3: a escolha aleatória é j = 0. Troque as posições 3 e 0 → Tâmara, Banana, Cereja, Maçã
- i = 2: a escolha aleatória é j = 2. Trocar uma posição consigo mesma não altera nada → Tâmara, Banana, Cereja, Maçã
- i = 1: a escolha aleatória é j = 0. Troque as posições 1 e 0 → Banana, Tâmara, Cereja, Maçã
Ordem final: Banana, Tâmara, Cereja, Maçã.
Com quatro itens, há 4! = 24 ordens possíveis. Cada uma delas, inclusive esta, tem uma chance de 1 em 24 de ocorrer em qualquer embaralhamento.
Por que não trocar simplesmente pares aleatórios?
Um método que parece mais simples — escolher duas posições aleatórias e trocá-las, repetindo o processo várias vezes — parece aleatório, mas não é. Alguns dos primeiros programas de embaralhamento, da década de 1950, funcionavam dessa maneira e favoreciam discretamente certas ordens em relação a outras, embora nenhuma execução isolada parecesse suspeita. O embaralhamento de Fisher–Yates evita isso porque cada item é movido exatamente uma vez para uma posição escolhida de um conjunto de opções que diminui de forma precisa, o que faz com que toda ordem final seja igualmente provável.
De onde vem o embaralhamento de Fisher–Yates?
Os estatísticos Ronald Fisher e Frank Yates descreveram o método em 1938, em um livro de tabelas estatísticas, para fazer embaralhamentos manuais durante o planejamento de experimentos. Em 1964, Richard Durstenfeld o adaptou para computadores, permitindo reordenar uma lista no próprio local, sem precisar de uma segunda lista para acompanhar o que restava. Donald Knuth incluiu essa versão para computadores em seu livro de 1969, The Art of Computer Programming, e por isso ela às vezes é chamada de embaralhamento de Knuth. Os navegadores da Web usam o mesmo algoritmo atualmente.
Usos comuns de um embaralhador de listas
- Definir a ordem em que os alunos farão apresentações ou responderão a perguntas em sala de aula
- Sortear a chave de um torneio ou definir a ordem dos turnos em um jogo
- Dividir um grupo em equipes aleatórias
- Escolher um restaurante, filme ou tarefa de uma lista curta sem favorecer uma opção
Um embaralhamento simples nem sempre é a melhor opção. Se alguns itens precisarem aparecer com mais frequência que outros, a seleção ponderada será mais adequada. Se for necessário garantir a representação de todas as categorias, a amostragem estratificada funcionará melhor que um único embaralhamento aleatório.
Perguntas frequentes
O embaralhamento é realmente aleatório?
Ele depende do gerador de números pseudoaleatórios (PRNG) do navegador, uma fórmula que produz sequências de números que se comportam como aleatórias para fins práticos. Isso é suficiente para definir ordens em sala de aula, sortear chaves de torneios ou escolher um filme. O recurso não foi projetado para criptografia, sistemas de apostas ou qualquer situação em que dinheiro ou segurança dependam da imprevisibilidade; nesses casos, são necessários geradores de números aleatórios certificados.
A ferramenta envia minha lista para um servidor?
O embaralhamento é executado inteiramente no navegador usando JavaScript, portanto não é necessária nenhuma solicitação de rede para reordenar a lista. A lista atual também é gravada no endereço da página, então recarregar a página ou salvar um favorito não fará com que ela seja perdida. Se esse endereço for copiado, compartilhado ou reaberto, a lista será enviada junto com ele, inclusive para qualquer servidor que posteriormente carregue a página. Evite colocar informações confidenciais na lista se isso for relevante.
O que acontece com itens duplicados?
Os itens duplicados são mantidos. Se "Sam" aparecer duas vezes na entrada, continuará aparecendo duas vezes na saída embaralhada, possivelmente em posições diferentes.
Há um limite para a quantidade de itens que posso embaralhar?
A ferramenta não tem um limite definido. Como o embaralhamento é executado em tempo linear, até listas longas são reordenadas em uma fração de segundo em qualquer dispositivo moderno.
Qual é a diferença entre embaralhar e ordenar?
A ordenação organiza os itens segundo uma regra fixa, como a ordem alfabética, e sempre produz o mesmo resultado para a mesma entrada. O embaralhamento organiza os itens aleatoriamente e produz uma ordem diferente quase todas as vezes, mesmo com entradas idênticas.
Posso embaralhar a mesma lista mais de uma vez?
Sim. Cada clique em "Randomizar lista" executa o algoritmo novamente, de forma independente de qualquer embaralhamento anterior. Com uma lista pequena, uma ordem repetida pode ocorrer por acaso; com uma lista maior, isso se torna extremamente improvável.