Collections.Shuffle Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Sobrecargas
| Nome | Description |
|---|---|
| Shuffle(IList<Object>, IRandomGenerator) | |
| Shuffle(IList<Object>, Random) |
Permute aleatoriamente a lista especificada usando a fonte de aleatoriedade especificada. |
| Shuffle(IList<Object>) |
Permuta aleatoriamente a lista especificada usando uma fonte padrão de aleatoriedade. |
Shuffle(IList<Object>, IRandomGenerator)
[Android.Runtime.Register("shuffle", "(Ljava/util/List;Ljava/util/random/RandomGenerator;)V", "", ApiSince=35)]
public static void Shuffle(System.Collections.Generic.IList<object> list, Java.Util.RandomGenerators.IRandomGenerator rnd);
[<Android.Runtime.Register("shuffle", "(Ljava/util/List;Ljava/util/random/RandomGenerator;)V", "", ApiSince=35)>]
static member Shuffle : System.Collections.Generic.IList<obj> * Java.Util.RandomGenerators.IRandomGenerator -> unit
Parâmetros
- rnd
- IRandomGenerator
- Atributos
Aplica-se a
Shuffle(IList<Object>, Random)
Permute aleatoriamente a lista especificada usando a fonte de aleatoriedade especificada.
[Android.Runtime.Register("shuffle", "(Ljava/util/List;Ljava/util/Random;)V", "")]
public static void Shuffle(System.Collections.Generic.IList<object> list, Java.Util.Random rnd);
[<Android.Runtime.Register("shuffle", "(Ljava/util/List;Ljava/util/Random;)V", "")>]
static member Shuffle : System.Collections.Generic.IList<obj> * Java.Util.Random -> unit
Parâmetros
- rnd
- Random
a fonte de aleatoriedade a ser usada para embaralhar a lista.
- Atributos
Comentários
Permute aleatoriamente a lista especificada usando a fonte de aleatoriedade especificada. Todas as permutações ocorrem com igual probabilidade supondo que a fonte de aleatoriedade seja justa.
Essa implementação percorre a lista para trás, do último elemento até o segundo, alternando repetidamente um elemento selecionado aleatoriamente para a "posição atual". Os elementos são selecionados aleatoriamente na parte da lista que é executada do primeiro elemento para a posição atual, inclusive.
Esse método é executado em tempo linear. Se a lista especificada não implementar a RandomAccess interface e for grande, essa implementação despejará a lista especificada em uma matriz antes de embaralhá-la e despejará a matriz embaralhada de volta na lista. Isso evita o comportamento quadrático que resultaria em embaralhar uma lista de "acesso sequencial" em vigor.
Java documentação para java.util.Collections.shuffle(java.util.List<?>, java.util.Random).
Partes desta página são modificações baseadas no trabalho criado e compartilhado pelo Project Open Source do Open Source e usadas de acordo com os termos descritos na Creative Commons 2.5.
Aplica-se a
Shuffle(IList<Object>)
Permuta aleatoriamente a lista especificada usando uma fonte padrão de aleatoriedade.
[Android.Runtime.Register("shuffle", "(Ljava/util/List;)V", "")]
public static void Shuffle(System.Collections.Generic.IList<object> list);
[<Android.Runtime.Register("shuffle", "(Ljava/util/List;)V", "")>]
static member Shuffle : System.Collections.Generic.IList<obj> -> unit
Parâmetros
- Atributos
Comentários
Permuta aleatoriamente a lista especificada usando uma fonte padrão de aleatoriedade. Todas as permutações ocorrem com probabilidade aproximadamente igual.
O hedge "aproximadamente" é usado na descrição anterior porque a fonte padrão de aleatoriedade é apenas uma fonte imparcial de bits escolhidos independentemente. Se fosse uma fonte perfeita de bits escolhidos aleatoriamente, o algoritmo escolheria permutações com uniformidade perfeita.
Essa implementação percorre a lista para trás, do último elemento até o segundo, alternando repetidamente um elemento selecionado aleatoriamente para a "posição atual". Os elementos são selecionados aleatoriamente na parte da lista que é executada do primeiro elemento para a posição atual, inclusive.
Esse método é executado em tempo linear. Se a lista especificada não implementar a RandomAccess interface e for grande, essa implementação despejará a lista especificada em uma matriz antes de embaralhá-la e despejará a matriz embaralhada de volta na lista. Isso evita o comportamento quadrático que resultaria em embaralhar uma lista de "acesso sequencial" em vigor.
Java documentação para java.util.Collections.shuffle(java.util.List<?>).
Partes desta página são modificações baseadas no trabalho criado e compartilhado pelo Project Open Source do Open Source e usadas de acordo com os termos descritos na Creative Commons 2.5.