Collections.Shuffle Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Overload
Shuffle(IList<Object>) |
Permuta in modo casuale l'elenco specificato usando un'origine predefinita di casualità. |
Shuffle(IList<Object>, Random) |
Permutare in modo casuale l'elenco specificato usando l'origine specificata di casualità. |
Shuffle(IList<Object>)
Permuta in modo casuale l'elenco specificato usando un'origine predefinita di casualità.
[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
Parametri
- Attributi
Commenti
Permuta in modo casuale l'elenco specificato usando un'origine predefinita di casualità. Tutte le permutazioni si verificano con una probabilità approssimativamente uguale.
La siepe "approssimativamente" viene usata nella descrizione precedente perché la fonte predefinita di casualità è solo circa una fonte non distorta di bit scelti in modo indipendente. Se fosse una fonte perfetta di bit scelti in modo casuale, l'algoritmo sceglierebbe permutazioni con uniformità perfetta.
Questa implementazione attraversa l'elenco all'indietro, dall'ultimo elemento fino al secondo, scambiando ripetutamente un elemento selezionato in modo casuale nella "posizione corrente". Gli elementi vengono selezionati in modo casuale dalla parte dell'elenco eseguita dal primo elemento alla posizione corrente, inclusi.
Questo metodo viene eseguito in tempo lineare. Se l'elenco specificato non implementa l'interfaccia RandomAccess
ed è di grandi dimensioni, questa implementazione esegue il dump dell'elenco specificato in una matrice prima di riapplicarla e scarica nuovamente la matrice casuale nell'elenco. In questo modo si evita il comportamento quadratico risultante dalla casualità di un elenco di "accesso sequenziale" sul posto.
Documentazione java per java.util.Collections.shuffle(java.util.List<?>)
.
Le parti di questa pagina sono modifiche basate sul lavoro creato e condiviso dal progetto Open Source Android e usato in base ai termini descritti nella licenza Creative Commons 2.5 Attribuzione.
Si applica a
Shuffle(IList<Object>, Random)
Permutare in modo casuale l'elenco specificato usando l'origine specificata di casualità.
[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
Parametri
- rnd
- Random
origine della casualità da usare per ricampionare l'elenco.
- Attributi
Commenti
Permutare in modo casuale l'elenco specificato usando l'origine specificata di casualità. Tutte le permutazioni si verificano con la stessa probabilità presupponendo che l'origine della casualità sia equa.
Questa implementazione attraversa l'elenco all'indietro, dall'ultimo elemento fino al secondo, scambiando ripetutamente un elemento selezionato in modo casuale nella "posizione corrente". Gli elementi vengono selezionati in modo casuale dalla parte dell'elenco eseguita dal primo elemento alla posizione corrente, inclusi.
Questo metodo viene eseguito in tempo lineare. Se l'elenco specificato non implementa l'interfaccia RandomAccess
ed è di grandi dimensioni, questa implementazione esegue il dump dell'elenco specificato in una matrice prima di riapplicarla e scarica nuovamente la matrice casuale nell'elenco. In questo modo si evita il comportamento quadratico risultante dalla casualità di un elenco di "accesso sequenziale" sul posto.
Documentazione java per java.util.Collections.shuffle(java.util.List<?>, java.util.Random)
.
Le parti di questa pagina sono modifiche basate sul lavoro creato e condiviso dal progetto Open Source Android e usato in base ai termini descritti nella licenza Creative Commons 2.5 Attribuzione.